題目描述
輸入一棵二叉樹,求該樹的深度。從根結點到葉結點依次經過的結點(含根、葉結點)形成樹的一條路徑,最長路徑的長度為樹的深度
解題思路:二叉樹的深度 = 根節點左子樹的深度與根節點右子樹的深度中的較大值 + 1
int treedepth(treenode* proot)
if (null == proot->left && null == proot->right)
int leftdepth = 0;
int rightdepth = 0;
leftdepth = treedepth(proot->left);//求左子樹的深度
rightdepth = treedepth(proot->right);//求右子樹的深度
int deepth = 0;
deepth = (leftdepth > rightdepth ? leftdepth : rightdepth) + 1;
return deepth;
}
劍指Offer演算法 求二叉樹深度
題目如下 輸入一棵二叉樹,求該樹的深度。從根結點到葉結點依次經過的結點 含根 葉結點 形成樹的一條路徑,最長路徑的長度為樹的深度。思路 二叉樹的深度計算,首先要判斷節點,以下是計算二叉樹的詳細步驟 1 一顆樹只有乙個節點,它的深度是1 2 二叉樹的根節點只有左子樹而沒有右子樹,那麼可以判斷,二叉樹的...
劍指offer 二叉樹的深度
輸入一棵二叉樹,求該樹的深度。從根結點到葉結點依次經過的結點 含根 葉結點 形成樹的一條路徑,最長路徑的長度為樹的深度。如果二叉樹只有根節點那麼深度就是1,如果只有左子樹,那麼就是左子樹的深度加1就是整棵二叉樹的深度 如果只有右子樹,那麼二叉樹的深度就是右子樹的深度加1 如果既有左子樹又有右子樹,那...
劍指offer 二叉樹的深度
輸入一棵二叉樹,求該樹的深度。從根結點到葉結點依次經過的結點 含根 葉結點 形成樹的一條路徑,最長路徑的長度為樹的深度。思路 面對樹形結構,我們常用的演算法就是遞迴,根樹的每一塊子樹都可以看成一棵小的完整的樹,這位我們解題提供了很好的思路。如果一開始傳入的就是空的那麼深度就是0,如果不是0,那麼這顆...