完整二叉树结构实现及检测测验

完整二叉树结构实现及检测测验

ID:34736767

大小:337.00 KB

页数:15页

时间:2019-03-10

完整二叉树结构实现及检测测验_第1页
完整二叉树结构实现及检测测验_第2页
完整二叉树结构实现及检测测验_第3页
完整二叉树结构实现及检测测验_第4页
完整二叉树结构实现及检测测验_第5页
资源描述:

《完整二叉树结构实现及检测测验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、算法与数据结构课程设计题目:完整的二叉树结构的实现及测试专业信息管理与信息系统班级1102学生邹欣学号3110302215指导教师鲍春波章静2012年6月21日–27日1.系统分析完整的二叉树结构的实现及测试,通过对每一个关于二叉树的功能,从创建、输入、遍历、求结点、求深度等分模块进行规划!在通过main函数和函数调用的方法加以连接,设计一个主页面就可以了!矚慫润厲钐瘗睞枥庑赖。2.系统设计(1):数据结构设计思想根据二叉树的定义和特点,从根本上全面的反应二叉树的特点和知识!先写好每一个功能函数的代码,放在主函数的前面,再

2、写好主函数的代码,在主函数中通过switch……case…..相应的调用与用户选择一致的函数,从而测试每一个功能。聞創沟燴鐺險爱氇谴净。(2):系统功能总体设计(3):各个功能模块的详细设计创建二叉树:计算叶子节点:计算节点数树的深度先序非递归遍历残骛楼諍锩瀨濟溆塹籟。中序递归遍历先序递归遍历4;系统界面设计:------------------------------------------------------------------------------------------酽锕极額閉镇桧猪訣锥。-------

3、--------------------------------------------------------------------------------彈贸摄尔霁毙攬砖卤庑。31)函数原型#include#include2)主函数voidmain(void){intchoice,Y;BiTreeTT,q;menu();TT=InitiateHead();printf("请输入你的选择:");scanf("%d",&choice);while(choice){switch

4、(choice){case0:system("cls");exite();break;case1:system("cls");printf("请输入结点如右面所示格式:1230400056700");謀荞抟箧飆鐸怼类蒋薔。CreateBiTree(&TT);menu();break;case2:system("cls");printf("请输入要查找的结点信息:");scanf("%d",&Y);q=Search(TT,Y);if(q)printf("查找成功!!");elseprintf("查找失败!!"

5、);menu();break;case3:system("cls");bianli(TT);menu();break;case4:system("cls");Root(TT);menu();break;case5:system("cls");printf("打印出来的树的形状是:");PrintTree(TT,0);menu();break;3功能模块函数:初始化二叉树BiTreeInitiateHead(){BiTNode*bt;bt=(BiTNode*)malloc(sizeof(BiTNode));bt->lch

6、ild=NULL;bt->rchild=NULL;returnbt;}建立二叉树voidCreateBiTree(BiTree*T){datatypech;scanf("%d",&ch);if(ch==Nil)*T=NULL;else{*T=(BiTNode*)malloc(sizeof(BiTNode));/为T开区间/if(!(*T))/如果T不为空/return;(*T)->data=ch;CreateBiTree(&((*T)->lchild));/创建左孩子/CreateBiTree(&((*T)->rchild

7、));/创建右孩子/}}查找值为X的结点BiTreeSearch(BiTreebt,datatypex){BiTreep;if(bt==NULL)/表空查找失败/returnNULL;elseif(bt->data==x)returnbt;else{p=Search(bt->lchild,x);if(p)/如果p非空/returnp;else{p=Search(bt->rchild,x);if(p)returnp;elsereturnNULL;}}}前序递归遍历此二叉树voidfInOrder(BiTreeT){if(T)

8、/如果T非空/{printf("%d",T->data);/访问结点/fInOrder(T->lchild);/访问结点的左孩子/fInOrder(T->rchild);/访问结点的右孩子/}}中序遍历此二叉树voidInOrder(BiTreeT){if(T)/如果T非空/{InOrder(T->lc

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

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

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