二叉樹的最大節點

2021-07-30 17:04:33 字數 441 閱讀 4953

問題描述:在二叉樹中尋找值最大的節點並返回。樣例

給出如下一棵二叉樹:

1

/ \

-5 2

/ \ / \

0 3 -4 -5

返回值為3的節點。

思路:建立新的節點temp用來儲存遍歷的最大的節點。需注意temp為全域性變數,要在public中,或使用引用。

用前序遍歷遍歷所有節點。判斷當前節點值是否大於r的節點值,如果是,將當前節點值賦值給r,如果不是,進行下乙個遍歷。

這裡使用的是遞迴,停止條件為當前節點為空。

**:class solution

void searchmax(treenode *root)}};

感想:剛開始沒有注意到函式的返回型別。還有想的複雜了,沒有理清遞迴的思路。

二叉樹的最大節點

1 問題描述 在二叉樹中尋找值最大的節點並返回。給出如下一棵二叉樹 1 5 2 0 3 4 5 返回值為 3 的節點。2 實現思路 從根節點開始前序遍歷,與其左右子樹結點值比較,a為遍歷過的最大節點,a與接下來遍歷的節點進行比較。3 class solution treenode compare t...

lintcode 二叉樹的最大節點

1 問題描述 在二叉樹中尋找值最大的節點並返回 2 思路 用中間結點儲存每一次遞迴時比較的取得最大值的節點。3 解題 definition of treenode class treenode class solution maxnode root left maxnode root right r...

lintcode 二叉樹的最大節點

1 問題 在二叉樹中尋找值最大的節點並返回。樣例 1 5 2 0 3 4 5 返回值為3的節點。2 思路 首先將根節點與乙個無限小的數比較,若根節點大於它將根節點的值賦給它,並且將根節點付給乙個臨時指標變數。用遞迴遍歷,整棵樹,每一次遞迴的過程中逐次尋找較大的數並把此節點賦給臨時指標,最後返回臨時指...