class
solution
vec.
push_back
(a);
a.clear()
;}reverse
(vec.
begin()
,vec.
end())
;return vec;}}
;
思路二: 深度優先搜尋
首先計算樹的高度depth
然後在vector開depth個vector
從樹根開始遍歷,因為要從樹底層開始輸出,所以要存的答案depth-1開始存.(因為先遍歷樹根節點,所以陣列從後往前存)
寫法一:
/*** definition for a binary tree node.
* struct treenode
* };
*/class
solution
intgetheight
(treenode* root )
void
dfs(treenode* root,
int dep)};
寫法二:
intdepth
(treenode*root)
void
dfs(vectorint>>
&res,
int n, treenode* root)
vectorint>>
levelorderbottom
(treenode* root)
leetcode 107二叉樹的層序遍歷
給定乙個二叉樹,返回其節點值自底向上的層次遍歷。即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其自底向上的層次遍歷為 15,7 9,20 3 方法1 佇列和map,一開始想的是使用map,key存放l...
leetcode107,二叉樹的層序遍歷
給定乙個二叉樹,返回其節點值自底向上的層次遍歷。即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其自底向上的層次遍歷為 15,7 9,20 3 求出二叉樹的深度,由此來初始化vector。使用queue...
LeetCode 107 二叉樹的層序遍歷II
1 題目描述 2 思路 方式1 層序遍歷需要使用佇列,每次讓根節點入隊,然後出隊,和102題差不多,不過最後需要反轉一下。方式2 新增到集合中時,每次從頭部新增 3 實現 1 node節點類 public class node 2 二叉樹類solution class solution public...