欢迎来到天天文库
浏览记录
ID:8957290
大小:33.00 KB
页数:2页
时间:2018-04-13
《c语言实现二叉树的前序遍历(非递归)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、二叉树的前序遍历、中序遍历、后续遍历(包括递归、非递归,共六种)1、前序遍历(非递归):#include#includestructBiTNode*stack[100];structBiTNode//定义结构体{chardata;structBiTNode*lchild,*rchild;};voidlater(structBiTNode*&p)//前序创建树{charch;scanf("%c",&ch);if(ch=='')p=NULL;else{p=(structBiTNode
2、*)malloc(sizeof(structBiTNode));p->data=ch;later(p->lchild);later(p->rchild);}}voidprint(structBiTNode*p)//前序遍历(输出二叉树){inti=-1;while(1){while(p!=NULL){stack[++i]=p->rchild;/*printf("ok?");*/printf("%c",p->data);p=p->lchild;}if(i!=-1){p=stack[i];i--;}elseretur
3、n;}}voidmain()//主函数{structBiTNode*p,*t;later(p);print(p);}供测试使用的数据前序创建二叉树中序后序/*ABDC*/BDACDBCA/*ABCDEFG*/CBDAFEGCDBFGEA
此文档下载收益归作者所有