leetcode 1302 層數最深葉子節點的和

2021-10-01 23:12:50 字數 853 閱讀 7063

給你一棵二叉樹,請你返回層數最深的葉子節點的和。

示例:

輸入:root = [1,2,3,4,5,null,6,7,null,null,null,null,8]

輸出:15

廣度優先遍歷,遍歷的時候記錄每一層的節點值之和,進入下一層時先將和清0,最後一次記錄的和就是結果。

/**

* definition for a binary tree node.

* struct treenode

* };

*/class

solution

}return res;}}

;

深度優先遍歷也可,實現時將層數當做遞迴的引數傳入。

需要記錄兩個變數,乙個是當前得到的和,乙個是當前樹的最大深度。

/**

* definition for a binary tree node.

* struct treenode

* };

*/class

solution

void

dfs(treenode * root ,

int depth)

else

if(depth>curdepth)

dfs(root-

>left,depth+1)

;dfs

(root-

>right,depth+1)

;}};

(1)深度優先搜尋遞迴實現簡單,但耗時高;

LeetCode 102 層次遍歷

一 思路 這道題使用的是二叉樹的廣度優先遍歷,也就是層次遍歷。與單純的層次遍歷不同的地方在於,這個問題要求返回的遍歷結果是乙個二維陣列,一行代表樹的一層。但是總的思路還是和層次遍歷沒有區別。為了知道二叉樹中每乙個節點位於書的哪一層的問題,需要標識每乙個節點所在的層數,並根據層次遍歷時的節點,對其子節...

leetcode1161 最大層內元素和

給你乙個二叉樹的根節點 root。設根節點位於二叉樹的第 1 層,而根節點的子節點位於第 2 層,依此類推。請你找出層內元素之和 最大 的那幾層 可能只有一層 的層號,並返回其中 最小 的那個。示例 輸入 1,7,0,7,8,null,null 輸出 2 解釋 第 1 層各元素之和為 1,第 2 層...

Leetcode 二叉樹層遍歷演算法

需求 以層遍歷一棵二叉樹,二叉樹的結點結構如下 struct tree node 例如 1 2 3 4 5 層遍歷後輸出1,2,3,4,5,代表該結點為空。要求 空間複雜度為o n 時間複雜度為o n 思路 使用乙個大小為n的陣列,以逐層結點方式記錄該陣列 掃瞄本層同時列印出下層結點的值或空值。陣列...