LeetCode102—Binary Tree Level Order Traversal
来源:互联网 发布:seo关键词优化怎么做 编辑:程序博客网 时间:2024/05/22 08:33
Binary Tree Level Order Traversal
原题
Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).
For example:
Given binary tree {3,9,20,#,#,15,7},
3
/ \
9 20
/ \
15 7
return its level order traversal as:
[
[3],
[9,20],
[15,7]
]
二叉树的层序遍历。
分析
层序遍历简单,麻烦就在于要维护两个“指针”记录每一层是否遍历完成:因为每次出队前都要新加入左右子树作为节点(如果存在),当前层的节点数即front对头元素,到队尾rear元素的大小。
代码
class Solution {private: void bfs(TreeNode *root, vector<vector<int>>&result) { if (root==NULL) return; vector<int>temp; vector<TreeNode*>q; int front = 0; int rear = 1; q.push_back(root); while (front < q.size()) { rear = q.size(); while (front < rear) { temp.push_back(q[front]->val); if (q[front]->left != NULL) q.push_back(q[front]->left); if (q[front]->right != NULL) q.push_back(q[front]->right); ++front; } result.push_back(temp); temp.clear(); } }public: vector<vector<int>> levelOrder(TreeNode* root) { vector<vector<int>>result; bfs(root, result); return result; }};
0 0
- LeetCode102—Binary Tree Level Order Traversal
- LeetCode102-Binary-Tree-Level-Order-Traversal
- LeetCode102 Binary Tree Level Order Traversal Java
- leetcode102:Binary Tree Level Order Traversal
- LeetCode102: Binary Tree Level Order Traversal
- leetcode102. Binary Tree Level Order Traversal
- LeetCode102 Binary Tree Level Order Traversal
- LeetCode102——Binary Tree Level Order Traversal
- Leetcode102——Binary Tree Level Order Traversal
- leetcode102. Binary Tree Level Order Traversal & 103. Zigzag Level
- LeetCode102 Binary Tree Level Order Traversal Java题解
- 算法作业HW18:LeetCode102 Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- 解决Nginx的connect() to xxx.xx.xxx.xxx:2345 failed (13: Permission denied) while connecting to upstream
- 微信视频开发jquery mobile
- KNN 算法的python实现 迭代训练方式,将最近的测试样例作为训练样例扩大训练集
- COM控件快速入门
- [OpenType 1.70 笔记] SVG 表
- LeetCode102—Binary Tree Level Order Traversal
- Android学习路线指南
- Objective-C之run loop详解
- Android之焦点小应用
- Unix系统命令
- LINQ的OrderBy有多个字段 (List)
- 设计模式_单例模式
- [html5]记一些html5的东西
- 信号量与互斥锁