1.程序代码(高度):
int depth(BinTree t) { if(t == NULL) return 0; int dl = depth(t->llink); int dr = depth(t->rlink); return (dl>dr ? dl : dr)+1; }
2.程序代码(结点数):
int num_of_nodes(BinTree t) { if(t == NULL) return 0; return 1+num_of_nodes(t->llink)+num_of_nodes(t->rlink); }
3.程序代码(叶结点数):
int num_of_nodes(BinTree t) { if(t == NULL) return 0; if(t->llink == NULL && t->rlink == NULL) return 1; return num_of_nodes(t->llink)+num_of_nodes(t->rlink); }