求給定二叉樹的最小深度。最小深度是指樹的根結點到最近葉子結點的最短路徑上結點的數量。
先判斷是否為空樹,不是的話,對左右子樹分別判斷,若左子樹為空,就進入右子樹並且加一,若右子樹為空,,就進入左子樹並加一。若左右子樹都不為空,對左右子樹深度進行判斷,輸出最小的深度。
/**
* struct treenode ;
*/class
solution
if(root-
>right ==
nullptr
)return1+
run(root-
>left)
;int lsum =
run(root-
>left)
;int rsum =
run(root-
>right)
;return
(lsum?(lsum +1)
:(rsum +1)
;}};
二叉樹最小深度
最小深度是從根節點到最近葉子節點的最短路徑上的節點數量。遞迴,若為空樹返回0 若左右子樹都為空,則返回 1 若左子樹為空,則返回右子樹的最小深度 1 若右子樹為空,則返回左子樹的最小深度 1 若左右子樹均不為空,則取左 右子樹最小深度的較小值,1 definition for a binary tr...
二叉樹的最小深度
題目 給定乙個二叉樹,找出其最小深度。二叉樹的最小深度為根節點到最近葉子節點的距離。樣例給出一棵如下的二叉樹 1 2 3 4 5 這個二叉樹的最小深度為 2 思路 開始以為和求最大深度似的乙隻去深度最小,後來想想不對。要處理節點的左子樹是空或者右字樹是空的情況,而且每次處理的方式相同,提示我運用遞迴...
二叉樹的最小深度
給定乙個二叉樹,找出其最小深度。二叉樹的最小深度為根節點到最近葉子節點的距離。樣例 給出一棵如下的二叉樹 1 2 3 4 5 這個二叉樹的最小深度為 2 class solution if root right null root left null p mindepth root left 1 q...