1. 給定乙個二叉樹,返回其按層次遍歷的節點值。 (即逐層地,從左到右訪問所有節點)。
例如:給定二叉樹: [3,9,20,null,null,15,7],
3/ \
9 20
/ \
15 7
返回其層次遍歷結果:
[[3],
[9,20],
[15,7]
]
/**
* definition for a binary tree node.
* struct treenode
* };
*/class solution ;
vector> res;
queueq};
while(!q.empty())
res.push_back(temp);
}return res;
}};
2. 給定乙個二叉樹,返回其節點值自底向上的層次遍歷。 (即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷)
例如:給定二叉樹 [3,9,20,null,null,15,7],
3/ \
9 20
/ \
15 7
返回其自底向上的層次遍歷為:
[[15,7],
[9,20],
[3]]
相比於1只需改變新增到結果陣列的方式,新增到vector的頭部即可。
/**
* definition for a binary tree node.
* struct treenode
* };
*/class solution ;
vector> res;
queueq};
while(!q.empty())
res.insert(res.begin(),temp);
}return res;
}};
3.
給定乙個非空二叉樹, 返回乙個由每層節點平均值組成的陣列.
示例 1:
輸入:3
/ \9 20
/ \
15 7
輸出: [3, 14.5, 11]
解釋:第0層的平均值是 3, 第1層是 14.5, 第2層是 11. 因此返回 [3, 14.5, 11].
方法和1,2一樣
/**
* definition for a binary tree node.
* struct treenode
* };
*/class solution ;
vectorres;
queueq};
while(!q.empty())
res.push_back(sum / count);
}return res;
}};
Leetcode 層次遍歷二叉樹
給定乙個二叉樹,返回其節點值自底向上的層次遍歷。即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回其自底向上的層次遍歷為 15,7 9,20 3 掌握層次遍歷模板 使用佇列 雙迴圈,可解決層次遍歷 求最大深...
leetcode 二叉樹 二叉樹的層次遍歷
給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其層次遍歷結果 3 9,20 15,7 方法一 遞迴 思路 比較訪問節點所在層次level和當前最高層次len levels 判定是否需...
LeetCode 二叉樹的層次遍歷
給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其層次遍歷結果 3 9,20 15,7 二叉樹層次遍歷 按照二叉樹的層次,從根節點所在的層,逐層進行遍歷。逐層遍歷時按照從左至右的順序。...