[LeetCode 102] Binary Tree Level Order Traversal
2016-07-29 00:00
555 查看
https://leetcode.com/problems/binary-tree-level-order-traversal/
http://www.lintcode.com/zh-cn/problem/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
return its level order traversal as:
confused what
http://www.lintcode.com/zh-cn/problem/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] ]
confused what
"{1,#,2,3}"means? > read more on how binary tree is serialized on OJ.
/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * this->left = this->right = NULL; * } * } */ class Solution { /** * @param root: The root of binary tree. * @return: Level order a list of lists of integer */ public: vector<vector<int>> levelOrder(TreeNode *root) { // write your code here vector<vector<int> > ret; queue<TreeNode *> q; if (root == NULL) { return ret; } q.push(root); q.push(NULL); while (!q.empty() && q.front() != NULL) { vector<int> subRet; while (true) { TreeNode *node = q.front(); if (node == NULL) { q.pop(); q.push(NULL); break; } if (node->left) { q.push(node->left); } if (node->right) { q.push(node->right); } subRet.push_back(node->val); q.pop(); } ret.push_back(subRet); } return ret; } };
相关文章推荐
- 数学图形(2.16)三维螺线
- [LintCode] Permutations II
- 奇数阶魔方阵
- [LeetCode] Longest Consecutive Sequence
- 数学图形(2.3)绕在圆环上的曲线
- 合成的默认构造函数定义为delete的一种情况(针对C++11标准)
- 混沌数学及其软件模拟
- 游戏:打泡泡
- 电子魔方
- Changing the Overridden Method’s Characteristics
- 将字符串中的单词分割,存入二维数组后输出
- [LeetCode] Merge k Sorted Lists
- [LeetCode] Merge Two Sorted Lists
- 四边形密铺平面
- [20] 鼓状物(Drum)图形的生成算法
- 数学图形(2.13)Spherical trochoid曲线
- [10] 圆管(Pipe)图形的生成算法
- 三生万物---算法生成的25幅三角形图像
- 数学图形(1.42)拱形曲线
- 游戏:小球快跑