給定乙個二叉樹,返回其節點值自底向上的層次遍歷。 (即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷)
例如:
給定二叉樹 [3,9,20,null,null,15,7],
3/ \
9 20
/ \
15 7
返回其自底向上的層次遍歷為:
[ [15,7],
[9,20],
[3]]
請先翻閱 leetcode 二叉樹的層次遍歷
此道題與上一題基本一樣,就是層次遍歷後將結果轉換為逆序的即可。
/**
* definition for a binary tree node.
* struct treenode
* };
*/class solution
//下面是正常的層次遍歷演算法
myqueue.push(root);
treenode *tempnodeptr = null;
while (!myqueue.empty())
if (tempnodeptr->right != null)
}result.push_back(temprec);//將此層的val結果放入結果容器
} //返回結果前進行調換
return vector>(result.rbegin(), result.rend());//將順序的訪問結果集合調換
LeetCode 初級演算法 樹 二叉樹的層次遍歷
給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回其層次遍歷結果 3 9,20 15,7 一開始的解法是,先層次遍歷把所有的樹節點存放進乙個二維list中,然後在做一次巢狀迴圈將每個節點的...
LeetCode 力扣 102 二叉樹的層次遍歷
二叉樹的層次遍歷,輸出乙個 list 的 list。這道題考的就是 bfs,我們可以通過 dfs 實現。只需要在遞迴過程中將當前 level 傳入即可。public list levelorder treenode root private void dfs treenode root,int le...
leetcode 二叉樹 二叉樹的層次遍歷
給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其層次遍歷結果 3 9,20 15,7 方法一 遞迴 思路 比較訪問節點所在層次level和當前最高層次len levels 判定是否需...