二叉树的递归遍历

二叉树的递归遍历

ID:38064605

大小:28.50 KB

页数:3页

时间:2019-05-25

二叉树的递归遍历_第1页
二叉树的递归遍历_第2页
二叉树的递归遍历_第3页
资源描述:

《二叉树的递归遍历》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#include#defineOVERFLOW-1typedefstructBiTNode{intdata;structBiTNode*lchild,*rchild;}BiTNode,*BiTree;voidvisit(charch){printf("%5c",ch);}voidCreateBiTree(BiTree&T){charch;scanf("%c",&ch);if(ch=='')T=NULL;else{T=(BiTree)malloc(sizeof(BiTNode));if(!T)exit(OV

2、ERFLOW);T->data=ch;CreateBiTree(T->lchild);CreateBiTree(T->rchild);}}voidPreOrderTraverse(BiTreeT,void(*Visit)(char)){if(T){Visit(T->data);PreOrderTraverse(T->lchild,Visit);PreOrderTraverse(T->rchild,Visit);}}voidInOrderTraverse(BiTreeT,void(*Visit)(char)){if(T){InOrderTraverse(T->

3、lchild,Visit);Visit(T->data);InOrderTraverse(T->rchild,Visit);}}voidPostOrderTraverse(BiTreeT,void(*Visit)(char)){if(T){PostOrderTraverse(T->lchild,Visit);PostOrderTraverse(T->rchild,Visit);Visit(T->data);}}intsum(BiTreeT){intm,n;if(!T)return0;else/*{m=sum(T->lchild);n=sum(T->rchil

4、d);returnm+n+1;}*/returnsum(T->lchild)+sum(T->rchild)+1;}intDepth(BiTreeT){intm,n;if(!T)return0;else{m=Depth(T->lchild);n=Depth(T->rchild);return(m>=n?m:n)+1;}}voidmain(){BiTreeT;inta,b;printf("按先序次序输入二叉树的结点:");CreateBiTree(T);printf("");printf("先序递归遍历二叉树:");PreOrderTraverse(

5、T,visit);printf("");printf("中序递归遍历二叉树:");InOrderTraverse(T,visit);printf("");printf("后序递归遍历二叉树:");PostOrderTraverse(T,visit);printf("");printf("求二叉树所有节点的个数:");a=sum(T);printf("%d",a);printf("");printf("求二叉树的深度:");b=Depth(T);printf("%d",b);printf("");}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。