下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、15.二叉树的建立与基本操作题目要求:编写程序实爲二叉树的如下操作:1)建立二叉链義2)二叉树的先序.中序、后序遍历3)求解二叉树的叶子结点个数4)将二叉树中所有结点的圭、右子树相互交换 输入:扩展二叉树先序序列:ab#d#ce#。其中#代表空指针。 输出:二叉树的凹入表示二叉树的先序序列、中序序列.后序序列走、右學树相宜妥换后的二叉树的凹入表示宀,左.右子树相互交换后的二叉树的先序序列、中序序列、后序 序列。说明:右子裔输鲜爵蚕叟論黔不裁出根结点然后依次输出左测试用例ab#d#ce#BiTree addm定义二叉树:typedef struct TreeNode cpre_sequence
2、: abdcein.sequence : bdaecQpostsequence : dbecaNumber of leaf: 22 BiTreeswappedchar data;struct TreeNode *left/*right; 左 右孩子指针 TreeNode;2bepre.sequence : acebd insequence :ceadb post_sequence : ecdba1.(重点)第一步:建立二叉链表TreeNode *p;p=CreateTree();TreeNode *CreateTree() TreeNode *pc; char ch; scanf(%c;&am
3、p;ch); if( ch=,#1) return NULL;else pc=(TreeNode*)malloc(sizeof(TreeNode);pc-data=ch;建立(根)备点pc-left=CreateTree();递归构造左子树链表pc-right=CreateTree();递归构造右子树链表return pc;2第二步:二叉树的凹入表示 定义全局变量:int kongge=0;printf(BiTeen); AoruPrint(p); void AoruPrint(TreeNode *p) int j;if(p=NULL) kongge=kongge-4; return; els
4、e for( j=0 ; jdata);kongge=kongge+4; AoruPrint(p-left); kongge=kongge+4;AoruPrint(p-right); kongge=kongge-4; return;重算法见代码3.(重点)第三步:先序遍历中序遍历后序遍历void Pre_sequence(TreeNode *p)先序( _if(pNULL) return;else printf(,%cp-data);Pre_sequence(p-lett);Pre_sequence(p-right); return;void ln_sequence(TreeNode *p)中
5、序 _if(p=NULL) return; else ln_sequence(p-left);printf(M%cM/p-data);ln_sequence(p right);return;void Post_sequence(TreeNode *p)后序 _if(p=NULL) return;else Post_sequence(p-left); Post_sequence(p right); printf(%cl,/p-data);return;4.第二步:二叉树子树变序void SwappedTree(TreeNode *p)TreeNode *pc;if(p=NULL) return;else /*只要有一个孩子子树不是空就交换*/if( p-left!=NULL | |p-right!=NULL ) pc=p-left;p-left=p right; p-right=pc;SwappedTree(p-left);SwappedTree(p-right);return;5.(重点)第五步:计算二叉树的叶子结点个 数int Countleave(TreeNode *p)if(!p) return 0;if( p-l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校教育服务行业相关项目经营管理报告
- 粪便潜血检测用化学试纸项目营销计划书
- 布料除臭行业经营分析报告
- 去中心化网络服务行业市场调研分析报告
- 兽皮产业链招商引资的调研报告
- 裘皮披肩商业机会挖掘与战略布局策略研究报告
- 废旧汽车回收利用行业经营分析报告
- 自行车测速计项目营销计划书
- 自行车前叉市场分析及投资价值研究报告
- 婴儿摇铃产业链招商引资的调研报告
- 公务员2021年国考《申论》真题(地市级)及参考答案
- 新教科版小学1-6年级科学需做实验目录
- 课堂教学质量评价表
- 护理文书质控 ppt课件
- 村级一村一品实施方案
- 机械制图基础知识完整版
- (医学PPT课件)ERCP中的操作技巧
- 高压线安全防护专项施工方案(完整版)
- 时栅位移传感技术讲解
- 处方管理办法试题及答案
- 广东省高考考试大纲(地理)
评论
0/150
提交评论