首页 > 代码库 > 二叉树的存储与遍历
二叉树的存储与遍历
typedef char status; typedef char Telemtype; #define NULL 0 #define OK 1 typedef struct bitnode{ Telemtype data; struct bitnode *lchild,*rchild; }bitnode,*bitree; Creatbitree(bitree &t) { //先序创建二叉树 char ch; scanf("%c",&ch); if(ch==‘*‘) t=NULL; else{ t=(bitnode *)malloc(sizeof(bitnode)); if(!t) exit(0); t->data=http://www.mamicode.com/ch;"%c",t->data); Preordertree(t->lchild); Preordertree(t->rchild); } } void Inordertree(bitree t) { //中序序列遍历二叉树 if(t) { Inordertree(t->lchild); printf("%c",t->data); Inordertree(t->rchild); } } void Pasttree(bitree t) { //后序序列遍历二叉树 if(t){ Pasttree(t->lchild); Pasttree(t->rchild); printf("%c",t->data); } }
编译执行结果例如以下:
<img src="http://img.blog.csdn.net/20140530230219765" />
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。