429. N叉树的层序遍历
Posted swetchine
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了429. N叉树的层序遍历相关的知识,希望对你有一定的参考价值。
给定一个 N 叉树,返回其节点值的层序遍历。 (即从左到右,逐层遍历)。
例如,给定一个 3叉树 :
返回其层序遍历:
[
[1],
[3,2,4],
[5,6]
]
说明:
树的深度不会超过 1000。
树的节点总数不会超过 5000。
solution:
1 /* 2 // Definition for a Node. 3 class Node 4 public: 5 int val; 6 vector<Node*> children; 7 8 Node() 9 10 Node(int _val, vector<Node*> _children) 11 val = _val; 12 children = _children; 13 14 ; 15 */ 16 class Solution 17 public: 18 vector<vector<int>> levelOrder(Node* root) 19 vector<vector<int> >vec; 20 if(root) 21 22 queue<Node*>q; 23 q.push(root); 24 while(!q.empty()) 25 26 int size = q.size(); 27 vector<int> vecChild; 28 while(size--) 29 30 Node* node = q.front(); 31 q.pop(); 32 vecChild.push_back(node->val); 33 for(auto child : node->children) 34 q.push(child); 35 36 vec.push_back(vecChild); 37 38 39 return vec; 40 41 ;
以上是关于429. N叉树的层序遍历的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 429. N叉树的层序遍历(N-ary Tree Level Order Traversal)