Binary Tree Level Order Traversal II
来源:互联网 发布:java的equals方法 编辑:程序博客网 时间:2024/06/06 05: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]]
confused what "{1,#,2,3}"
means? > read more on how binary tree is serialized on OJ.
先简单的按顺序打印的求个倒。
class Solution { public: vector<vector<int> > levelOrderBottom(TreeNode *root) { vector< vector<int> > result; if(root==NULL) { return result; } queue<TreeNode *> queue_tree_1; //变量名可以取直观点的,比如first, second queue<TreeNode *> queue_tree_2; queue_tree_1.push(root); TreeNode *currentNode; vector<int> v; //尽量减少变量 while(!queue_tree_1.empty()) { while(!queue_tree_1.empty()) { currentNode = queue_tree_1.front(); if(currentNode->left!=NULL) queue_tree_2.push(currentNode->left); if(currentNode->right!=NULL) queue_tree_2.push(currentNode->right); v.push_back(currentNode->val); queue_tree_1.pop(); } if(!v.empty()) //这里出错了 { result.push_back(v); v.clear(); } while(!queue_tree_2.empty()) { currentNode = queue_tree_2.front(); if(currentNode->left!=NULL) queue_tree_1.push(currentNode->left); if(currentNode->right!=NULL) queue_tree_1.push(currentNode->right); v.push_back(currentNode->val); queue_tree_2.pop(); } if(!v.empty()) { result.push_back(v); v.clear(); } } vector< vector<int> > final_res; for(int i=result.size()-1; i>=0; i--) { final_res.push_back(result[i]); } return final_res; } };
0 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
- 论语新解
- poj 1470 Closest Common Ancestors(LCA)
- AOP 你想干什么 IOC 你服务什么
- 博客导航
- 设置Spinner弹出框/下拉框的样式--最简单有效的方式
- Binary Tree Level Order Traversal II
- Can ORACLE use both memory_target and AIX large pages at the same time ?
- 如何实现赋值运算符函数
- 用代理测试ArrayList和LinkedList的添加和删除元素所用的时间
- 栈和队列
- SQL Server 2008“阻止保存要求重新创建表的更改”
- 《单采血浆站基本标准》
- JAVA并发编程——守护线程(Daemon Thread)
- call_user_func()与call_user_func_array函数