求樹的高度的算法 怎么計(jì)算二叉樹高度?
怎么計(jì)算二叉樹高度?想法:對于非空二叉樹,其深度等于左子樹的最大深度加1。Intdepth(bintree*t){intdep1,dep2if(t==null)return(0)else{dep1=d
怎么計(jì)算二叉樹高度?
想法:對于非空二叉樹,其深度等于左子樹的最大深度加1。
Intdepth(bintree*t)
{
intdep1,dep2
if(t==null)return(0)
else
{
dep1=depth(t->lchild)
dep2=depth(t->rchild)
if(dep1>dep2)return(dep1)
elsereturn(dep2 1)
]~。首先,我們聲明一個(gè)[treeheight]函數(shù)并傳遞一個(gè)[root]樹。
2. 然后,我們定義左子樹和右子樹,稱為lcheight和rcheight。
3. 這時(shí),我們可以判斷這棵樹是否是空的。如果為空,我們可以直接退出函數(shù)。
4. 此時(shí),我們可以在這里調(diào)用左遞歸和右遞歸。
5. 接下來,我們可以在這里遞歸累加。
6. 注意,第五步的代碼與此代碼具有相同的功能。