[LeetCode]Binary Tree Level Order Traversal II
2015-02-13 20:49
465 查看
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]
]
这道题是求二叉树从下往上的层次遍历,与Binary Tree Level Order Traversal十分相似,只是在最后一步将ans反转一下就可以了。
直接贴上代码了:
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]
]
这道题是求二叉树从下往上的层次遍历,与Binary Tree Level Order Traversal十分相似,只是在最后一步将ans反转一下就可以了。
直接贴上代码了:
/** * 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> > ans; queue<TreeNode*> q; if (root == NULL) return ans; q.push(root); int nextCount = 0; int curCount = 1; vector<int> temp; while (!q.empty()){ TreeNode* p = q.front(); q.pop(); temp.push_back(p->val); if (p->left){ q.push(p->left); nextCount++; } if (p->right){ q.push(p->right); nextCount++; } curCount--; if (!curCount){ ans.push_back(temp); temp=vector<int>(); curCount = nextCount; nextCount = 0; } } reverse(ans.begin(), ans.end()); return ans; } };
相关文章推荐
- [LeetCode] Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II --leetcode C++
- [LeetCode]Binary Tree Level Order Traversal II,解题报告
- 【LeetCode】107 - Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II(LeetCode)
- 【LeetCode】Binary Tree Level Order Traversal II
- leetcode107——Binary Tree Level Order Traversal II
- 【Leetcode】Binary Tree Level Order Traversal II (Tree Traversal)
- LeetCode力扣之107. Binary Tree Level Order Traversal II
- leetCode No.107 Binary Tree Level Order Traversal II
- Leetcode: Binary Tree Level Order Traversal II 理解分析
- LeetCode(26)-Binary Tree Level Order Traversal II
- Binary Tree Level Order Traversal II [LeetCode]
- LeetCode Binary Tree Level Order Traversal II
- LeetCode 之 Binary Tree Level Order Traversal II
- [leetcode-107]Binary Tree Level Order Traversal II(java)
- [Leetcode]Binary Tree Level Order Traversal II
- leetcode Binary Tree Level Order Traversal II
- [LeetCode] Binary Tree Level Order Traversal II
- LeetCode-107-Binary Tree Level Order Traversal II(二叉树级序遍历<2>)