求二叉鍊錶樹高度

2021-10-13 12:52:34 字數 436 閱讀 7448

非遞迴實現

基於層序遍歷思想,使用佇列操作結點,從根節點開始入隊,出隊後判斷左右子樹,如果當前結點有左右子樹則將子樹入隊,並且判斷是否訪問到這一層最右端結點,層數加1.

void height(bitree t)

bitnode *p = t; //設乙個指標指向t進行操作

q[++rear] = p; //當前結點入隊

while(rear!=front)

if(p->rchild)

if(rear == last)

} return level;

}

遞迴實現:先分別遞迴計算左、右子樹的高度,最後取最大值的層數加上根節點的層數為最終結果

int height(bitree)else

}

求二叉樹高度

函式介面定義 int getheight bintree bt 其中bintree結構定義如下 typedef struct tnode position typedef position bintree struct tnode 要求函式返回給定二叉樹bt的高度值。裁判測試程式樣例 include...

求二叉樹高度

本題要求給定二叉樹的高度。函式介面定義 int getheight bintree bt 其中bintree結構定義如下 typedef struct tnode position typedef position bintree struct tnode 要求函式返回給定二叉樹bt的高度值。裁判測...

求二叉樹高度

題目來自於pta 函式介面定義 int getheight bintree bt 其中bintree結構定義如下 typedef struct tnode position typedef position bintree struct tnode 要求函式返回給定二叉樹bt的高度值。裁判測試程式樣...