1 / 13
文档名称:

非递归算法遍历二叉树.doc

格式:doc   大小:37KB   页数:13
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

非递归算法遍历二叉树.doc

上传人:iris028 2019/11/24 文件大小:37 KB

下载得到文件列表

非递归算法遍历二叉树.doc

文档介绍

文档介绍:课内实验报告学生姓名:  及学号:     学院: 班级: 课程名称: 实验题目: 指导教师姓名及职称:      目 录一、实验目的  1二、实验内容  1三、实验要点及说明  1四、实现方法  1五、实验结果  2六、源程序清单  7一、;;。二、实验内容采用二叉链表存储结构实现二叉树建立及其前序、中序和后序遍历。三、实验要点及说明在主函数中通过对函数的调用来实现如上的功能,运用指针将所有功能连接起来,使程序的可操作性更强。四、实现方法运行环境v++,然后创建了4个子函数以及主函数。实现对二叉树进行操作的函数有:创建二叉树函数CreateBTree,将括号输入法输入的二叉树通过switch语句建立成一棵二叉树。二叉树的先序遍历函数PreOrder。按照先序遍历的序列即先访问根节点,然后遍历左子树,最后遍历右子树输出。二叉树的中序遍历函数InOrder,按照中序遍历的序列即先遍历左子树,然后访问根节点,最后遍历右子树输出。二叉树的中序遍历函数PostOrder,按照后序遍历的序列即先遍历左子树,然后遍历右子树,最后访问根节点,。主函数为main函数,通过对三个函数的调用,从而完成先序、中序、后序的遍历。五、实验结果六、源程序清单#include<>#include<>                /*包含头文件*/#include<>#defineBTreeDTchar#defineMaxSize100/*******二叉链表存储结构定义*******/typedefstructbkbnode{BTreeDTdata;structbkbnode*lchild;structbkbnode*rchild;}BTNode;/*******建立二叉树*******/voidCreateBTree(BTNode*&bt,char*str){BTNode*St[MaxSize],*p=NULL;inttop=-1,k,j=0;charch;bt=NULL;ch=str[j];while(ch!='\n'){switch(ch){case'(':top++;St[top]=p;k=1;break;case')':top--;break;case',':k=2;break;default:p=(BTNode*)malloc(sizeof(BTNode));p->data=ch;p->lchild=p->rchild=NULL;if(bt==NULL)bt=p;else{switch(k){case1:St[top]->lchild=p;break;case2:St[top]->rchild=p;break;}}}j++;ch=str[j];}}/**********先序遍历***********/voidPreOrder(BTNode*&bt){BTNode*p=bt,*St[MaxSize];inti=0;printf("先序遍历输出:\n");while(!(p==NULL&&St[i]==NULL)){if(p!=NULL){printf("%c",p->data);St[i]=p;i++;p=p->lchild;}else{i--;p=St[i];p=p->rchild;}}}/*********中序遍历*********/voidInOrder(BTNode*bt){BTNode*p=bt,*St[MaxSize];inttop=-1;printf("中序遍历输出:\n");do{while(p){top++;St[top]=p;p=p->lchild;}p=St[top];printf("%c",p->data);top--;if(p->rchild){p=p->rchild;top++;St[top]=p;p=p->lchild;}elsep=p->rchild;}while(top!=-1);}/*****后序遍历*****/voidPostOrder(BTNode*&bt){BTNode*p1,*p2;inti=0;p1=(BTNode*)malloc(sizeof(BTNode));p2=(BTNode*)malloc(sizeof(BTNode));p1->data=1;p2->data=2;BTNode*a[MaxSize];BTNode*p=bt;unsignedsign;printf("后序遍历序列的输出:\n");do{if(p!=NULL){a[i]=p;i++;a[i]=p1;i++;p=p->lchild;}elsewhile(a[i]!=

最近更新

2026年山东省枣庄市单招职业倾向性测试模拟测.. 45页

小学历史与文化知识竞赛题库100道附答案【综合.. 37页

小学历史与文化知识竞赛题库100道及答案【网校.. 36页

新安全生产法知识竞赛试题库及完整答案【网校.. 43页

最新煤气操作证考试题100道含答案(巩固) 38页

旋转导向钻井系统用探管扶正器设计研究 8页

2025年医用内窥镜项目建议书 65页

2025年力学计量标准器具项目合作计划书 59页

2025年锦州师范高等专科学校单招职业技能测试.. 44页

2025广东环保集团总部招聘一般管理岗位员工9人.. 46页

2025湖南衡阳市衡阳县湘南船山高级技工学校招.. 45页

2026年c语言文件考试题库(精练) 13页

2026年上海市松江区九亭中学教师招聘参考题库.. 46页

2026年会计专业技术资格考试题库200道(基础题.. 89页

2026年刑事诉讼原理与实务模拟题100道附参考答.. 49页

2026年注册税务师考试题库含答案(b卷) 46页

2026山西省面向福州大学选调优秀高校毕业生参.. 49页

2025广西国土规划集团西藏办事处招聘参考题库.. 44页

2025海南海口市教育局冬季赴高校面向2026应届.. 47页

2025重庆科技大学招聘14人备考题库附答案解析.. 45页

2026年c语言指针考试题库及参考答案1套 13页

2026年C语言程序设计实例教程(精选题) 13页

2025交通运输部所属事业单位第七批统一招聘10.. 18页

2026年江西交通职业技术学院单招职业倾向性考.. 37页

2025年新疆考试录用公务员《公安专业科目》真.. 30页

2024年南京信息职业技术学院单招职业技能测试.. 78页

CFG群桩基础土方开挖施工方案 6页

全国大学生智能车大赛作品-智能循迹小车技术文.. 31页

中药配伍禁忌表 6页

《凌志轩四柱命理高级培训班教材》 72页