題目鏈結給定乙個二叉樹,返回其節點值自底向上的層次遍歷。 (即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷)
例如:給定二叉樹 [3,9,20,null,null,15,7],
3/ \
9 20
/ \15 7
返回其自底向上的層次遍歷為:
[[15,7],
[9,20],
[3]]
/**
* definition for a binary tree node.
* struct treenode
* };
*/class
solution;}
vectorint>> results;
vector<
int> result;
queue> nodes;
nodes.
push
(root)
; queue> child;
while
(!nodes.
empty()
)if(node-
>right)
if(nodes.
empty()
)}reverse
(results.
begin()
, results.
end())
;return results;}}
;
執行結果:通過執行用時:0 ms, 在所有 c++ 提交中擊敗了100.00%的使用者
記憶體消耗:11.7 mb, 在所有 c++ 提交中擊敗了64.90%的使用者
本道題先正向層次遍歷,再reverse即可。
/**
* definition for a binary tree node.
* struct treenode
* };
*/#include
#include
class
solution}if
(!levelnum.
empty()
) result.
push_back
(levelnum)
; levelnum.
clear()
;}reverse
(result.
begin()
, result.
end())
;return result;}}
;
參見官方解答
LeetCode 107 二叉樹的層次遍歷
題目描述 給定乙個二叉樹,返回其節點值自底向上的層次遍歷。即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回其自底向上的層次遍歷為 15,7 9,20 3 解題思路 此題跟102基本一樣,就是在輸出時是自底...
leetCode 107 二叉樹層次遍歷II
按層次從頂至下遍歷,將每層結點加在佇列尾部,每次從頭部取出一層結點。使用棧將結果反轉。definition for a binary tree node.public class treenode class solution if root.right null stack.push temp 棧...
leetcode 107 二叉樹的層次遍歷 II
前言 python刷leetcode題解答目錄索引 正文 給定乙個二叉樹,返回其節點值自底向上的層次遍歷。即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回其自底向上的層次遍歷為 15,7 9,20 3 d...