树的深度:树中最大的结点层数,从树根开始定义,根结点为第1层,它的孩子结点为第2层,以此类推。
计算方法:取最大(左子树高度,右子树高度)+ 1
具体代码可以用二叉树的后序遍历来改,加上MaxH = (HL>HR)?HL:HR;
计算二叉树高度代码:
1 2 3 4 5 6 7 8 9 10 11 |
int PostOrderGetHeight(BinTree BT) { int HL,HR,MaxH; if(BT){ HL = PostOrderGetHeight(BT->Left); HR = PostOrderGetHeight(BT->Right); MaxH = (HL>HR)?HL:HR; return (MaxH+1); }else return 0; } |