
实验3实现二进制排序树1.实验目的: 1.掌握二进制排序树的定义和实现基本操作的算法. 2.准备实验报告. 3.熟悉顺序搜索,半搜索和二叉排序树,平衡搜索,在二叉树上插入和删除的方法. 问题描述: 实现了二进制排序树的搜索,插入和删除操作. 步骤: 1.定义一个二进制链接列表结构来存储二进制排序树. 2.实现二叉树的搜索,插入和删除算法. 3.设计和测试二进制排序树,并使用插入算法创建相应的内存二进制树,该树可以测试搜索,插入和删除算法的边界. 4.完成实验的实验报告. 报告的格式是“数据结构问题集”的模板格式. 两周后提交. 设备和环境: PC计算机,Windows操作系统,C / C ++开发环境结论: 能够理解和掌握二进制排序树的基本算法. 二,需求分析查找是数据处理的重要操作. 请设计并实现基于二元排序树的产品信息查询算法. 完成信息查询,插入,删除,查询频率统计等功能. 三,摘要设计建立一个二进制排序树并执行基本操作以验证其准确性. 四,详细设计#include #include typedef struct node intkey; struct node * lch,* rch;} bitnode; bitnode * creat_bt(); //建立一个二进制序列树bitnode * search(bitnode * root,int data); //查找数据是否存在. 如果不是,它将返回要找到的数据的父节点指针. 无效searchx(bitnode * root,int data); //确定搜索到的元素数据是否存在,并给出相应的提示void显示(bitnode * t); //遍历二叉树以验证正确的bitnode * deletex(bitnode * t,intdata); //删除二叉树中的键为数据的节点bitnode * add(bitnode * t,int //添加二叉树中的键为数据的节点int //用于计算void main()的全局变量bitnode * t; int a,键;执行printf(“ ********** ***********主菜单****************** ***“); printf(” \ n 1.Build Binary Tree“); printf(” \ n 2.删除以指定元素作为二进制树中键的节点“); printf(” \ n 3. 将具有指定元素作为键的节点添加到二叉树“); printf(” \ n 4.在二叉树中,找到其键是指定元素“)的节点; printf(” \ n 5.遍历二叉树树以验证正确性“); printf(” \ n 6.结束程序运行“); printf(” \ n请输入您的选择(1,2,3,4,5,6): “); scanf (“%d”,&a);开关(a)t = creat_bt(); break;} case scanf(“%d”,&key); t = deletex(t,key); break; printf(“输入元素的键值用作%d节点: “,n ++); scanf(”%d“,&键); t = ad d(t,键);打破; scanf(“%d”,&键); searchx(t,key);打破; printf(“ ************************************************* * \ n \ n \ n“);} while(a!= 6); printf(“ GOOD BYE !!!”); bitnode * creat_bt()//建立二进制序列树bitnode * t = NULL,* s,* f; printf(“请输入%d关键字关键字的值(以0结尾): ”,n); scanf(“%d”,&k); while(k!= 0)//用于计数s =(bitnode *)malloc(sizeof(bitnode)); s-> key = k; s-> lch = NULL; s-> rch = NULL;如果(t == NULL)t = s;否则f =搜索(t,k); if(k == f->键)// printf(“ \ nHint: 该元素已经存在,请重新输入”); elseif(kkey)f-> lch = s;否则f-> rch = s; printf(“请输入%d关键字关键字的值(以0结尾): ”,n); scanf(“%d”,&k); bitnode * search(bitnode * root,intdata)//查找是否存在数据,如果没有要找到的数据的父节点指针bitnode * p = NULL,* q = root; while(q)if(data == q-> key)return //现有元素数据,返回数据所在的位置q else if(datakey)q = q-> lch;否则q = q-> rch; //返回要查找的数据的父节点的指针voidsearchx(bitnode *根,int数据)//判断搜索是否存在元素数据并给出相应的提示bitnode * p = NULL,* q = root ; int标签= 0; while(q tag = 1; break;)//查找元素数据,否则,如果(datakey)q = q-> lch;否则q = q-> rch; if(tag == 1)printf(“ \ n搜索元素存在于二叉树%d”中,数据); else printf(“ \ n搜索树在二叉树中不存在,查找元素%d”,数据); bitnode * deletex(bitnode * t,intdata)//删除密钥为二叉树中数据的节点bitnode * p,* f,* s,* q; int标志= 0; p = t; f = NULL; while(p!= NULL)如果(p-> key> data)p = p-> lch;否则p = p-> rch; printf(“此二叉树中没有这样的值,无法完成删除操作.

“);如果(f == NULL)t = p-> rch,则返回;否则如果(f-> lch == p)f-> lch = p-> rch;否则,则f-> rch = p- > rch;自由(p); q = p; s = p-> lch;而(s-> rch)q = s; s = s-> rch;)如果(q == p)q-> lch = s-> lch; else q-> rch = s-> lch; p-> key = s-> key; free(s); bitnode * add(bitnode * t,int //将密钥添加到二进制树中的数据节点bitnode * s,* f; s =(bitnode *)malloc(sizeof(bitnode)); s-> key = k; s-> lch = NULL; s-> rch = NULL; f =搜索(t,k ); if(k == f-> key)// printf(“ \ nHint: 该元素已经存在,请重新输入要添加的元素的键值作为%d节点: ”);否则( kkey)f-> lch = s;否则f-> rch = s; return voiddisplay(bitnode * t)//遍历二叉树以验证二叉树显示的正确性(t-> lch); printf( “%5d”,t->键);显示(t-> rch); 5.调试过程应分为模块,并应使用不同的功能来完成不同的操作.

在调试过程中,添加节点这一部分比较困难,并且文件存储和读取功能尚未实贵香,花满月. 在这个美丽的节日中,人们享受月球,吃月饼,探望亲戚和朋友……没有禁忌和其他形式,这使人们对生活的无限热爱和对美好生活的向往. 中秋节是中国的瑰宝之一,有着深厚的文化底蕴. 中国人对他们的关系非常重视,重视团圆,特别是在中秋节期间. 中秋节是一个充满感情的节日. 中秋节是团聚的时候. 这个季节,感受情感,释放情感,增进感情;这个季节,期待团圆,追求团圆,享受团圆……这些已经成为人们生活的主题.

学生将能够背诵有关中秋节的永恒短语,例如“猎头仰望月球,俯视家乡”,“我希望人们会变得美丽,以及月亮将在千里之. 3.活动目的: 有效利用雄成员: 吴开辉2.安全保卫小组: 负责注册号码参加春季郊游的人数,登车前的人数登记,休假期间同学的集体批准,未经教育的安全知识培训以及午餐制作小组负责人: Xu Yang超级会员: Wang Chong 3.成分采购组: 根据春季旅游人数和预算支出购买食材. 主持人: 胡庆英成员: 何晓宜4.居住小组组织: 在车上,赏花期间,主要是做饭后小组活动现场小组负责人: 吴楠成员: 冯艳林5.烹饪比赛组织组: 负责指导每个小组的午餐准备,最后二叉排序树排序,他负责从团队推荐的五个小组中选择“厨师王”(厨师王春季之旅免费)团队负责人: 朱中达成员: 严陆6.财务组: 负责财务报告和最终费用的收取,做好工作. 向班级负责人汇报最终账目: 杨宇7. 监督组: 负责检查各组任务的完成情况并协调各组任务. 领导: 叶庆清[注]以上仅为一般职责,组长负责,各组应相互配合,互相帮助,发挥自己的才智并认真完成任务. 9.注意事项1.小组应尽量保持活跃,不要过于活跃. 每个小组必须有学生干部. 学生干部必须带头2.原料的购买必须太复杂. 我以前想过食谱,然后组织大家学习烹饪. 注意购买的食材的质量和数量. 3.注意提醒每个人要给手机充满电并始终保持交流. 平稳,带相机的学生带上相机,并组织大家拍摄更多全家福. 4.游戏应能吸引所有人参加,使学生能加深理解班级领导更能了解麦州学生,增进每个小组的感情,应在规定的时间前爱住胡麦准备向指导小组提交的报告,似乎是《 Hu Times》的第一份紧急报告.

监督团队还可以及时向班级委员会报告现场活动的准备情况,并实时交换信息. 最美丽的中秋节是感恩节!无需多说几句话,给父母一个微笑,给亲戚和朋友一个问候,递一杯茶,咬一口月饼,这是我们给父母的最好回报. 谢谢父母的一生,也感谢父母的培训. 老师,同学们,这个中秋节,我们要感恩的心!感恩!感谢所有创造我们的人,感谢您帮助我们发展人!怀着感激之情,我们只会懂得尊重老师,只会关心帮助别人,只会努力学习和珍惜自己,才能拥有幸福和幸福!老师,同学,中秋节最美. 心!中秋节是最美丽的,祝你真诚的愿望
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-149347-1.html
其余舰船只有5艘在2000吨至3000吨之间