树的先序,中序,后序递归遍历 |
您所在的位置:网站首页 › 蒙古人如何补充维生素 › 树的先序,中序,后序递归遍历 |
//树的先序、中序、后序遍历递归 #include typedef struct node { char data; struct node *lchild,*rchild; }BTNode; void Greate(BTNode *&T) { char ch; scanf("%c",&ch); if(ch=='#') T=NULL; else { T=(BTNode*)malloc(sizeof(BTNode)); T->data=ch; Greate(T->lchild); Greate(T->rchild); } } //先序遍历 void PreOrder(BTNode *T) { if(T!=NULL) { printf("%c",T->data); PreOrder(T->lchild); PreOrder(T->rchild); } } //中序遍历 void InOrder(BTNode *T) { if(T!=NULL) { InOrder(T->lchild); printf("%c",T->data); InOrder(T->rchild); } } void PostOrder(BTNode *T) { if(T!=NULL) { PostOrder(T->lchild); PostOrder(T->rchild); printf("%c",T->data); } } int main() { BTNode *T; Greate(T); printf("先序遍历:"); PreOrder(T); printf("\n"); printf("中序遍历:"); InOrder(T); printf("\n"); printf("后序遍历:"); PostOrder(T); return 0; } 输入:AB#D##C#F## 输出: 先序遍历:ABDCF 中序遍历:BDACF 后序遍历:DBFCA |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |