




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构课程设计-题目:二叉树的相关操作 姓 名: 学 号: 专 业: 班 级: 指导教师: 年 月 日 目 录1、 课程设计目的.12、 课程设计题目及要求.13、 模块图与流程图.14、 程序清单.55、 运行结果.116、 实验心得.131、 课程设计目的:课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。2、 课程设计题目及要求:二叉排序树的相关操作要求:完成二叉排序树的建立、查询、插入和删除操作。3、 模块图与流程图:模块图:建立查询插入删除 开始流程图: main() 退出exit()显示 print()删除delete()查询search() 插入insert ()建立creat() 结束 4、 程序清单:#include #include typedef struct node int key; struct node *lchild,*rchild; bstnode,*bstree; void creatbst(bstree *bst);bstree searchbst(bstree bst,int key) ;void insertbst(bstree *bst,int key) ;bstnode * delbst(bstree t,int k) ;void printbst(bstree t);const int n = 10;void creatbst(bstree *bst) int i; int key; *bst=null; for(i=1;ikey=key) return bst; else if(key key) return searchbst(bst-lchild, key); else return searchbst(bst-rchild, key); void insertbst(bstree *bst,int key) bstree t; if(*bst=null) t=(bstree)malloc(sizeof(bstnode); t-key=key; t-lchild=null; t-rchild=null; *bst=t; else if(key key) insertbst(&(*bst)-lchild),key); else if(key(*bst)-key) insertbst(&(*bst)-rchild,key); bstnode * delbst(bstree t,int k) bstnode *p,*f,*s,*q; p=t; f=null; while(p) if(p-key=k) break; f=p; if(p-keyk) p=p-lchild; else p=p-rchild; if(p=null) return t; if(p-lchild=null) if(f=null) t=p-rchild; else if(f-lchild=p) f-lchild=p-rchild; else f-rchild=p-lchild; free(p); else q=p; s=s-lchild; while(s-rchild) q=s; s=s-rchild; if(q=p) q-lchild=s-lchild; else q-rchild=s-lchild; p-key=s-key; free(s); return t; void printbst(bstree t) if (t) printbst(t-lchild); printf(%4d, t-key); printbst(t-rchild); intmain() bstnode * root; bstree s; int loop,i,data; while(1) printf(ncai dann); printf( 1.creatn); printf( 2.searchn); printf( 3.insertn); printf( 4.deleten); printf( 5.printn); printf( 6.exitn); scanf(%d,&i); if(i6) printf( i is error.); switch(i) case 1: printf(creatbst); creatbst(&root); break; case 2: printf(please input the data you want search.n); scanf(%d,&data); s=searchbst(root,data); if (s!=null)printf(the data in the bstree); else printf(no match datan); break; case 3: printf(please input the data you want insert.n); scanf(%d,&data); insertbst(&root,data); break; case 4: printf(please input the data you want delete.n); scanf(%d,&data); root=delbst(root,data); break; case 5: printf(n); if (root!=null) printf(the bstrees root is:%dn,root-key); printbst(root); break; case 6:exit(0);break; 5、 实验结果1,建立二叉树2 查询3插入4删除5显示6退出退出后的界面6、 实验心得通过此次数据结构课程设计,本人实在获益匪浅。由于刚开始没怎么学好这门课程,刚开始的时候无从下手。呆呆的坐在微机房中发呆。回去后,决定从头复习所做题目内容。加上朋友,同学的帮助。经过两天时间的努力,终于完成了老师的任务。刚开始,有一些错误,问了老师,老师点出了错误的重点,又给了适当的提示。于是自己浏览修改。最后通过了检查。反思这次课
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市规划项目实施过程中的法律法规适应性评估合同
- 畜牧饲料企业职业病危害告知及员工健康评估服务合同
- 生态农业产业园项目委托代建与农产品销售服务协议
- 文化创意产业隐名股东版权权益保护协议
- 2025广东历年美学自考试题及答案
- 2025年湖南省怀化市辅警招聘考试题库及答案
- 2025年建筑工程类施工员市政-装饰参考题库含答案解析(5卷)
- 2025年学历类自考专业(电子商务)网页设计与制作-电子商务概论参考题库含答案解析(5卷)
- 2025年学历类自考专业(电子商务)电子商务与现代物流-计算机与网络技术基础参考题库含答案解析(5卷)
- 2025年学历类自考专业(电子商务)商法(二)-市场信息学参考题库含答案解析(5卷)
- GB 25585-2010食品安全国家标准食品添加剂氯化钾
- 小学信息技术人工智能教学案例
- 服装零售业概况
- sg1000系列光伏并网箱式逆变器通信协议
- 专升本03297企业文化历年试题题库(考试必备)
- 第四讲大学生就业权益及其法律保障课件
- 重庆大学介绍课件
- 学校开展校园欺凌专项治理情况自查表
- 牛津深圳版九年级上册Module 1 Geniuses Unit1 Wise Man in History话题作文期末复习
- 电能表生产流程
- Scala基础语法课件汇总整本书电子教案全套课件完整版ppt最新教学教程
评论
0/150
提交评论