leetcode || 107、Binary Tree Level Order Traversal II
来源:互联网 发布:温州平阳网络问政平台 编辑:程序博客网 时间:2024/05/20 19:16
problem:
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.
题意:层序遍历二叉树,从最后一层往上开始按层输出
thinking:
和普通的二叉树层序遍历原理一样,借助queue实现,先得到从上到下的层序遍历结果,再借助stack翻转一下结果即可
code:
class Solution { private: vector<vector<int> > ret; stack<vector<int> > _stack; public: vector<vector<int> > levelOrderBottom(TreeNode *root) { ret.clear(); if(root==NULL) return ret; queue<TreeNode *> tmp_queue; tmp_queue.push(root); level_order(tmp_queue); while(!_stack.empty()) { vector<int> tmp=_stack.top(); ret.push_back(tmp); _stack.pop(); } return ret; } void level_order(queue<TreeNode *> queue1) { if(queue1.empty()) return; vector<int> array; queue<TreeNode *> queue2; while(!queue1.empty()) { TreeNode *tmp=queue1.front(); array.push_back(tmp->val); queue1.pop(); if(tmp->left!=NULL) queue2.push(tmp->left); if(tmp->right!=NULL) queue2.push(tmp->right); } _stack.push(array); level_order(queue2); } };
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
- 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
- [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
- [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
- 【LeetCode】Binary Tree Level Order Traversal II
- [LeetCode] Binary Tree Level Order Traversal II
- mysql索引
- spring的jar包下载地址
- 归并排序
- 嵌入式第七讲 构建根文件系统
- input 和<fmt:formatDate>的结合使用
- leetcode || 107、Binary Tree Level Order Traversal II
- LinuxC下获取UDP包中的路由目的IP地址和头标识目的地址
- Nmon在RH6x86_64下的简易使用手册
- 第一次大作业分析【番外——特效篇】
- Longest Common Prefix
- 【自用】OI计划安排表一轮
- test
- http状态码204理解
- ViewPager的无限循环,自己实现的DEMO