Leetcode 102 二叉樹的層次遍歷 C

2021-09-11 05:41:39 字數 376 閱讀 3442

思路:廣度優先搜尋bfs.

用乙個佇列q,用來儲存二叉樹的節點。首先將根節點放進去,然後利用while迴圈來判斷什麼時候結束。然後利用for迴圈一層一層的輸出。之所以可以這樣做,是因為for迴圈中提前獲取了q的大小,此時q的大小就是每一層節點的大小,然後逐步遞減,雖然q的大小一直在變化,但在執行for迴圈的之前,q的大小就是下一層二叉樹節點的大小。

class solution ;

vector> ans;

queueq;

q.push(root);

while(!q.empty())

ans.push_back(tmp);

}return ans;

}};

LeetCode 102 二叉樹的遍歷

給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 返回其層次遍歷結果 如下 definition for a binary tree node.public class treenode public class solution list res new ...

LeetCode 102 二叉樹的層次遍歷

題目鏈結 題目描述 給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其層次遍歷結果 3 9,20 15,7 解決方法 廣度優先 層次 遍歷,使用佇列實現 具體思路 在訪問了乙個節點之後...

LeetCode 102 二叉樹的層次遍歷

給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回其層次遍歷結果 3 9,20 15,7 此題需要將各個層的節點分別儲存到不同的陣列中。所以在while迴圈中,加了乙個for迴圈,迴圈次數...