由于递归写起来很简单,就三行,直接贴代码了
typedef struct BiTNode{ int data; struct BiTNode *lchild,*rchild; }BiTNode,*BiTree; //前序递归输出 void preOrder_recs(BiTree T){ if(T!=NULL){ printf("%d ",T->data); preOrder_recs(T->lchild); preOrder_recs(T->rchild); } } //中序递归输出 void inOrder_recs(BiTree T){ if(T!=NULL){ inOrder_recs(T->lchild); printf("%d ",T->data); inOrder_recs(T->rchild); } } //后序递归输出 void postOrder_recs(BiTree T){ if(T!=NULL){ postOrder_recs(T->lchild); postOrder_recs(T->rchild); printf("%d ",T->data); } }