Binary Tree Level Order Traversal II
来源:互联网 发布:sql server 自增列 编辑:程序博客网 时间:2024/04/29 17:03
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]]点击打开原题链接
跟从上往下层次遍历一样,最后把结果倒置一下就可以了~~
struct node { TreeNode* tn; int level; };class Solution {public:vector<vector<int> > levelOrderBottom(TreeNode *root) {vector<vector<int> > vvi;vector<int> vi;deque<node> di;node nd;int level = 0;if (root == NULL){return vvi;}nd.level = 0;nd.tn = root;di.push_back(nd);node left,right;while (!di.empty()) {nd = di.front();if (nd.tn->left != NULL){left.tn = nd.tn->left;left.level = nd.level+1;di.push_back(left);}if (nd.tn->right != NULL){right.tn = nd.tn->right;right.level = nd.level + 1;di.push_back(right);}// if (vi.empty())// {// vi.push_back(nd.tn->val);// level++;// di.pop_front();// }// else // {nd = di.front();if (nd.level == level){vi.push_back(nd.tn->val);di.pop_front();}else{vvi.push_back(vi);vi.clear();vi.push_back(nd.tn->val);level++;di.pop_front();}//}}vvi.push_back(vi);return vector<vector<int> >(vvi.rbegin(),vvi.rend());}};
1 0
- 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
- Binary Tree Level Order Traversal II
- C++杂记
- FLASH MAGIC LPC ISP下载方式说明
- Shell Scripts 简单实战
- 关于为什么学习计算机,简单谈谈那时的想法
- [2014年10月5日亲测可用]迅雷极速版高速通道加速破解补丁发布
- Binary Tree Level Order Traversal II
- Oracle sql 宝典
- 并查集--带权
- iOS常用设计模式——单例模式
- hdu4407(容斥原理)
- 漫谈数据库索引一
- 设计模式之状态模式
- [Android笔记]lisview异步加载(未修正参考)
- Leetcode Pascal's Triangle