
刷题笔记--树的遍历
发布日期:2021-05-07 08:57:14
浏览次数:13
分类:技术文章
本文共 1112 字,大约阅读时间需要 3 分钟。
树的建立
已知先序中序求后续#includeusing namespace std;typedef struct BiTNode{ char data; BiTNode *lchild; BiTNode *rchild;}BiTNode,*tree;BiTNode* creat(char *pre, char *in, int n){ int i = 0; int n1 = 0,n2 = 0; int m1 = 0,m2 = 0; BiTNode*node = NULL; char lpre[1001],rpre[1001]; char lin[1001],rin[1001]; if(n==0) return NULL; node=(BiTNode*)malloc(sizeof(BiTNode)); memset(node,0,sizeof(BiTNode)); node->data=pre[0]; for(i=0;i lchild=creat(lpre,lin,n1); node->rchild=creat(rpre,rin,n2); return node;} void print(BiTNode *T){ if(T) { print(T->lchild); print(T->rchild); cout< data; }}//层序 void prin(Tree tree){ if(tree==NULL) return; int i=0,t=0; struct BitNode *s[10086],*q; s[0]=tree; int flag=0; while(t<=i) { q=s[t++]; if(flag) printf(" %d",q->data); else { printf("%d",q->data); flag=1; } if(q->lchild!=NULL) s[++i]=q->lchild; if(q->rchild!=NULL) s[++i]=q->rchild; }}int main(){ char a[50],b[50]; int n,i,j,k; cin>>n; for(i=0;i >a[i]; getchar(); for(i=0;i >b[i]; BiTNode* tree=creat(a,b,n); print(tree);}
发表评论
最新留言
关注你微信了!
[***.104.42.241]2025年03月29日 10时26分06秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
1333 餐厅过滤器(treemap映射)
2019-03-04
python中的all函数
2019-03-04
1137 第 N 个泰波那契数(迭代、记忆性递归)
2019-03-04
279 完全平方数(dfs)
2019-03-04
279 完全平方数(bfs)
2019-03-04
865 具有所有最深结点的最小子树(递归)
2019-03-04
738 单调递增的数字(找出逆序的位置)
2019-03-04
410 分割数组的最大值(二分查找、动态规划)
2019-03-04
875 爱吃香蕉的珂珂(二分查找)
2019-03-04
693 交替位二进制数(位运算)
2019-03-04
450 删除二叉搜索树中的节点(递归删除节点)
2019-03-04
769 最多能完成排序的块(分析)
2019-03-04
542 01 矩阵(单源bfs、多源bfs)
2019-03-04
1679 K 和数对的最大数目(使用字典对余数分组、排序 + 双指针)
2019-03-04
python测试代码耗时
2019-03-04
蓝桥杯博文链接
2019-03-04
桌面图标的自动排列图标
2019-03-04
121 买卖股票的最佳时机(寻找数组中单调递增的序列中最小数字与最大数字--单调栈)
2019-03-04
第十一届蓝桥杯python组第二场省赛-数字三角形
2019-03-04
蓝桥杯四平方和(暴力)
2019-03-04