問題描述:
給定乙個二叉樹,找出其最小深度。
二叉樹的最小深度為根節點到最近葉子節點的距離。
解題思路:處理特殊的子樹,空樹返回0,只有根節點返回1,邪數遍歷一邊的節點個數就好了,左右子樹都有將二叉樹的最大深度改一下就好了
實現**:class solution {
public:
/*** @param root: the root of binary tree.
* @return: an integer
*/int mindepth(treenode *root) {
// write your code here
if(root==null) return 0;
if(root->left==null&&root->right==null) return 1;
if(root->left==null&&root->right!=null) return mindepth(root->right)+1;
if(root->left!=null&&root->right==null) return mindepth(root->left)+1;
int l = mindepth(root->left);
int r = mindepth(root->right);
if(l感悟:二叉樹的最小深度最重要的是判斷幾種特殊的樹,剩下的就和二叉樹的最大深度差不多了
二叉樹最小深度
最小深度是從根節點到最近葉子節點的最短路徑上的節點數量。遞迴,若為空樹返回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...