LeetCode Binary Tree Level Order Traversal II
来源:互联网 发布:斗破苍穹网络剧在哪播 编辑:程序博客网 时间:2024/04/27 16:41
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.
OJ's Binary Tree Serialization:
The serialization of a binary tree follows a level order traversal, where '#' signifies a path terminator where no node exists below.
Here's an example:
1 / \ 2 3 / 4 \ 5
The above binary tree is serialized as "{1,2,3,#,#,4,#,#,5}"
.
/** * 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> > iveclist;if (root == NULL)return iveclist;vector<int> rowSize, buf;queue<TreeNode *> TreeFIFO;rowSize.push_back(0);TreeFIFO.push(root);while (!TreeFIFO.empty()) {int n = TreeFIFO.size();for (int i = 0; i < n; i++) {TreeNode *tempNode = TreeFIFO.front();TreeFIFO.pop();buf.push_back(tempNode->val);if (tempNode->left)TreeFIFO.push(tempNode->left);if (tempNode->right)TreeFIFO.push(tempNode->right);}rowSize.push_back(buf.size());}for (int i = rowSize.size() - 2; i >= 0; i--) {vector<int> tempVec;for (int j = rowSize[i]; j < rowSize[i + 1]; j++) {tempVec.push_back(buf[j]);}iveclist.push_back(tempVec);}return iveclist;}};
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
- 看到个有趣的方法批量下载rtf模板
- 表空间的状态(一) - ONLINE和OFFLINE
- C语言中数组名和指针的区别
- 构造数列Codeforces Round #261 (Div. 2)C
- Android 网络连接工具类
- LeetCode Binary Tree Level Order Traversal II
- http://www.toming.net
- Live555代码调试1
- malloc 不能返回动态内存
- java基础知识点之多态,接口,抽象类
- 【几何】HDU 3124 Moonmist 最近圆对
- arduino之旅——L298N驱动小车前进后退
- Ninject 3 学习笔记 一.为什么使用Ninject?
- JS中对象与数组一些使用上的相同与不同