void zhongxu(BiTree T) { if(T){ zhongxu(T->lchild); printf("%c",T->data); zhongxu(T->rchild); } }
//中序遍历二叉树 void zhongxu (PNODE p) { if (NULL == p) { return ; } else { zhongxu(p->Pleft); printf ("%d " ,p->a); zhongxu(p->Pright); return ; } }
int main () { PNODE p = goujian(3);//构造一个指针向根节点 //先序便利原来的 xianxu(p); printf ("\n"); //中序便利原来的 zhongxu(p); printf ("\n"); //反转 fanzhuan(p); xianxu(p); printf ("\n"); zhongxu(p); printf ("\n"); return 0; }
void main() { BiTree T; int sum,dep; printf("please input data: "); T=Create(T); printf("xianxu: "); Preorder(T); printf("\n"); printf("zhongxu: "); zhongxu(T); printf("\n"); printf("houxu: "); houxu(T); printf("\n"); }
int main() { BiTree T = NULL; int sum,dep; T = Create(T); Preorder(T); printf("\n"); zhongxu(T); printf("\n"); houxu(T); printf("\n"); sum=Sumleaf(T); printf("%d",sum); dep=Depth(T); printf("\n%d",dep); return 0; }