5.1.2 Binary Tree Level Order Traversal II
来源:互联网 发布:域名与商标冲突 编辑:程序博客网 时间:2024/06/03 15:34
Notes: Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to root). For example: Given binary tree {3,9,20,#,#,15,7}, 3 / \ 9 20 / \ 15 7 return its bottom-up level order traversal as: [ [15,7] [9,20], [3], ] Solution: Queue version. On the basis of 'Binary Tree Level Order Traversal', reverse the final vector. */ /** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */
class Solution {public: vector<vector<int> > levelOrderBottom(TreeNode *root) { vector<vector<int>> root2leaf; queue<TreeNode *> q; if (!root) return root2leaf; q.push(root); q.push(NULL); // end indicator of one level vector<int> level; while (true) { TreeNode *node = q.front(); q.pop(); if (node) { level.push_back(node->val); if (node->left) q.push(node->left); if (node->right) q.push(node->right); } else { root2leaf.push_back(level); level.clear(); if (q.empty()) break; // CAUTIOUS! infinite loop q.push(NULL); } } // reverse reverse(root2leaf.begin(), root2leaf.end()); return root2leaf; }};
0 0
- 5.1.2 Binary Tree Level Order Traversal II
- LeetCode: Binary Tree Level Order Traversal II
- [LeetCode]Binary Tree Level Order Traversal II
- LeetCode Binary Tree Level Order Traversal II
- [Leetcode] Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II
- LeetCode Binary Tree Level Order Traversal II
- [LeetCode] Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II
- 【leetcode】Binary Tree Level Order Traversal II
- [LeetCode]Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II
- [Leetcode]Binary Tree Level Order Traversal II
- [leetcode]Binary Tree Level Order Traversal II
- LeetCode219:Contains Duplicate II
- 安全测试:脚本攻击与SQL注入攻击
- fragment+Radiobutton实现顶部导航切换
- jax-ws webservice编程
- 网易游戏2015年暑期实习生面试经历-游戏研发工程师
- 5.1.2 Binary Tree Level Order Traversal II
- 黑马程序员_java语言_正则表达式以及Date类
- mysql数据库中group by和sum一起使用语句的简单介绍 .
- 黑马程序员---Java 网络编程(一)
- SVG(Scalable Vector Graphics)可缩放矢量图形
- 是否有初始化列表、参数是否为引用时调用构造函数和析构函数的执行顺序
- Windows Server2008 开启多用户远程链接
- jquery的$.extend和$.fn.extend作用及区别
- SQL查询入门(上篇) 原理型