


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、可运行C语言数据结构课程设计二叉树相关操作源代码#includestdio. h>#include<stdlib. h>#define MAXSIZE 1000 structBiTNode int c;intichild, rchild;BiTNode, *BiTree; structBiTNode treeMAXSIZE; void creat () /创建_.叉树函数 inti, j;printff需要输入权值个数:n"); scanf("滋d",&j);辻(j<8) /判断二叉树是否达到4层printf (错误:二叉树的层数少
2、于4层! );return;printf ("开始输入权值:);for (i二 1; i<=j ; i二i+1)/权值的录入 scanf(”%d",&treei. c);treei. lchild=2*i;treei.rchild=2*i+l;printf f成功创建二叉树n");int leaves ()/统计叶子个数函数inti, i;1=0;for (i=l;treei. c!=XULL;i+)/计算二义树结点的个数1+;if (1%2)/判断结点的奇偶性从而讣算叶子的个数return(1-1)/2)+1);elsereturn(1/2);in
3、t deep () /求二叉树的深度intd, i, sum;for (i=l;treei. c!=XULL;i+):/计算二义树结点的个数for (d=l;sum<=i;d+)/求出二叉树的深度辻(d!二 1)sum=sum+sum*2;return(dl);void qian(int a)/前序遍历输出列表辻(treed.c!二NULL)/判断当前结点是否有值,若有执行如下操作,若无则返回上一层printf (,z%d, ", tree a, c);/首先输出当前结点(根节点)的权值qian(a*2);递归调用,用当前结点的左孩子作根节点重复当前函数的操作qian(a*2+
4、l);递归调用,用当前结点的右孩子作根节点重复当前函数的操作elsereturn;void zhong(int a)/中序遍历输出列表辻(tree 2紐.c!二NULL)/首先判断当前结点的左孩子是否为空,不是就进行递归调用,用当前结点的左孩子作根节点重复当前函数的操作zhong(2*a);printf (,z%d, “, tree a, c);/输出当前结点的权值辻(tree2*a+l.c!=NULL)/判断当前结点的右孩子是否为空,不是就进行递归调用,用当前结点的右孩 子作根节点重复当前函数的操作zhong(2*a+l);void hou(int d)/后序遍历输出序列辻(tree 2紐.
5、c!二NULL)/判断当前结点的左孩子是否为空,不是就进行递归调用,用当前结点的左孩 子作根节点重复当前函数的操作hou(2*a);辻(tree2*a+l.c!=NULL)/判断当前结点的右孩子是否为空,不是就进行递归调用,用当前结点的右孩 子作根节点重复当前函数的操作hou(2*a+l);printf (,z%d, “, tree a, c);/输出当前结点的权值void main()intd, 1, i;i=10;printf("* J 录*n");printf ("1、创建二叉树n");printf ("2、统计叶子个数n);printf
6、 ("3、求_.叉树的深度n");printf C4前序遍历输出列表rT);printf("5、中序遍历输出列表n");printf ("6、后序遍历输出序列n");printf("0.退出操作);while(i!=0)printf C选择操作:);scanf (“&i);辻(i=0)break;else if (i1)printf ("开始创建二叉树(层数不少于4层)n");creat ();else if(i二二2)1 二leaves ();printff叶子个数为:%dnM);else 辻(i二二3)d二deep();printf ("i.叉树的深度是%dn", d);else if (i4)printff用前序遍历输出的结果是:n");qian(l);printf("n");else if(i二二5) printff用中序遍历输出的结果是:n"); zhong(1);printf("n");else if (i6)printf
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校电脑室管理制度
- 学校课桌椅管理制度
- 学生专属群管理制度
- 学生走读证管理制度
- 安全保卫室管理制度
- 安装队安全管理制度
- 宜兴市药店管理制度
- 实训室车间管理制度
- 审批精细化管理制度
- 客车六严禁管理制度
- 高中政治《 科学立法》教学设计
- (完整word)a3标准规范试卷模板
- html5 web前端期末考试复习题
- 施工现场平面布置要求(完整已排版)
- 2022年碳酸钾生产项目可行性研究报告
- 软胶囊干燥除湿转笼用户需求URS
- 中国科学院生态环境研究中心-环境工程A-927历年真题2010-2015
- 汉语拼音音节表带声调
- 操作系统期末考试试卷及答案
- 中国银行营业网点基础服务礼仪规范
- SCR脱硝反应器尺寸修改后
评论
0/150
提交评论