int Depth(BiTree T)/* 深度 */ { if(T==NULL) return(0); return 1+(Depth(T->lchild)>Depth(T->rchild)? Depth(T->lchild):Depth(T->rchild)); //選擇左右孩子深度高的然后加上根節點這一層就是深度了 } void Long(BiTree T) { if(T!=NULL)//在T不為空的情況下 { visit(T->data);//訪問節點 if(Depth(T->lchild)>Depth(T->rchild))//判斷往左走還是往右走 Long(T->lchild); else Long(T->rchild); } } 深度就是長度,下面的函數要調用上面的函數