二叉平稳排序树_第1页
二叉平稳排序树_第2页
二叉平稳排序树_第3页
二叉平稳排序树_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据结构课程设计报告专 业:班 级:姓 名:指导教师:运算机科学与技术2020 级 1张珑学号: 08二叉平稳排序树一、课程设计内容问题描述:从一棵空树开始创建,在创建进程中,保证树的有序性,同时还 要针对树的平稳性做些调整。最终要把创建好的二又排序树转换为二义平稳排序 树。大体要求:1.创建(插入、调整、改组)2.输出二、概要设计一、.要紧数据结构概念typedef struct node node;struct node(node* parent;node* left;node* right;int balance;二义排序树的插入在二义排序树中插入新结点,要保证插入后的二义树仍符合二义排

2、序树的概念。 插入进程:假设二义排序树已存在,那么返回根节点;当节点不存在时,将待插结点关键字key和树根关键字parent->key进行比较, 若key<parent->key,那么插入到根的左子树中,不然,那么插入到根的右子树中。而子树中的插入进程和在树中的插入进程相同, 如此进行下去,直到把结点作为一个新的树叶插入到二叉排序树中,或直到发觉 树已有相同关键字的结点为止。而且注意二叉树的平稳性,时刻调整。b.二又排序树的删除假设在二叉排序树上被删结点为*tp,其双亲结点为*parent,且不失一样性,可 设* *parent 是* parent-left;的左小孩。下面分

3、3种情形进行讨论:(1)假设*parent结点为叶子结点,即PL和PR均为空树。由于删去叶子结点 不破坏整棵树的结构,那么只需要修改其双亲结点的指针即可。(2)假设*parent结点只有左子树PL或只有石子树PR,现在只要令PL或PR 直接成为其双亲结点*f的左子树即可。显然,作此修改也不破坏二义排序树的 特性。(3)假设*parent结点的左子树和右子树均不空。而且注意二义树的平稳性,时刻调整。4、中序遍历和先序遍历voidinterordertraverse(node*root)+1. -1 R, 0 7 13, 0;4, 013, 0请选择操作;1 .插入2、删除查询4 .退出需人插入的值,2+ h0 2, 0h, 013, 0k 1 2, 0L 0卜,0 13, 0E青选择操作1 .插入程进程中要认真2,则陡 丸查询 4、退出谨慎,决不能有半点马虎,一些小的疏忽可能是以后程序检错中很难找到的错误。2 .在设计比较大程序时候,要多和同窗交流,每一次成心义的交流将使自己收成 颇丰或在某个难点上豁

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论