首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
二叉排序树采用二叉链表存储。写一个算法,删除结点值是X的结点。要求删除该结点后,此树仍然是一棵二叉排序树,并且高度没有增长(注意:可不考虑被删除的结点是根的情况)。
二叉排序树采用二叉链表存储。写一个算法,删除结点值是X的结点。要求删除该结点后,此树仍然是一棵二叉排序树,并且高度没有增长(注意:可不考虑被删除的结点是根的情况)。
admin
2019-08-15
51
问题
二叉排序树采用二叉链表存储。写一个算法,删除结点值是X的结点。要求删除该结点后,此树仍然是一棵二叉排序树,并且高度没有增长(注意:可不考虑被删除的结点是根的情况)。
选项
答案
在二叉排序树上删除结点,首先要查找该结点。查找成功后,若该结点无左子树,则可直接将其右子树的根结点接到其双亲结点上;若该结点有左子树,则将其左子树中按中序遍历的最后一个结点代替该结点,从而不增加树的高度。 void Delere(BSTree bst,keytype X){ //在二叉排序树bst上,删除其关键字为x的结点 BSTree f,p=bst: while(P&&p一>key!=X) //查找值为X的结点 if(p一>key>X){f=p;p=p一>lchild;} else{f=p;p=p一>rchild;} if(P==null){prinff(”无关键字为x的结点\n”);exit(0);} if(p一>lchild==null){ //被删结点无左子树 if(f一>lchild==p)f->lchild=p->rehild;//将被删结点的右子树接到其双亲上 else f一>rchild=p一>rehild; } else{q=p;s=p->lchild; //被删结点有左子树 while(s一>rchild!=null) //查左子树中最右下的结点(中序最后结点) {q=s;s=s一>rehild;} P一>key=s一>key: //结点值用其左子树最右下的结点的值代替 if(q==p)P一>lchild=s->lchild; //被删结点左子树的根结点无右子女 else q一>rchild=s一>lchild: //s是被删结点左子树中序序列最后一个结点 free(s); } }
解析
转载请注明原文地址:https://kaotiyun.com/show/n0Ci777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
乾隆时期,明确规定了驻藏大臣的地位与达赖班禅同等,并实行“金瓶掣签”制度的文件是()。
下列关于社会大分工不正确的说法是()。
1936年,张学良和杨虎城发动的西安事变()。①是一次具有爱国意义的兵变②民族矛盾激化的结果③检验了中国社会各阶级的抗日态度④促成了抗日民族统一战线初步形成
关于一战后构筑的凡尔赛体系,说法不正确的是()。
三个进程P1、P2、P3互斥使用一个包含N(N>O)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用getev
已知某CPU有16根地址线、8根数据线,并用MREQ作为访存控制信号(低电平有效)。现有下列存储芯片:1K×4位ROM、2K×4位ROM、4K×8位ROM、4K×8位RAM、8K×4位RAM、8K×8位RAM和非门、与非门、或非门若干,如下图所
关于B一树,下列说法中不正确的是()。
以下有关m阶B一树的说法中正确的有()。Ⅰ.每个结点至少有两棵非空子树Ⅱ.树中每个结点至多有m-1个关键字Ⅲ.所有叶子在同一层上Ⅳ.当插入一个数据项引起B-树结点分裂后,树长高一层
随机试题
砂仁、白豆蔻皆可用治
除了哪味药物,入汤剂都宜先煎
A.含牙囊肿B.黏液囊肿C.牙源性钙化囊肿D.婴儿龈囊肿E.牙旁囊肿滤泡囊肿是
输卵管妊娠的根治性手术适应证不包括
波长为λ的X射线,投射到晶格常数为d的晶体上,取k=1,2,3,…,出现X射线衍射加强的衍射角θ(衍射的X射线与晶面的夹角)满足的公式为()。
()是应急救援工作的核心内容之一,其目的是为尽快地控制事故的发展,防止事故的蔓延和进一步扩大,从而最终控制住事故,并积极营救事故现场的受害人员。
某股份有限公司注册资本为5000万元人民币,董事会有5名成员,该公司应在2个月内召开临时股东大会的情形有( )。
良好的师生关系是教育教学取得成功的()。
某小型微利工业企业2012年度的相关情况如下:①产品销售收入50万元。②其他应征税的收入10万元。③销售成本、销售税金及附加45万元。④有关费用、其他支出5万元,经审查企业所得税前费用列支罚款4万元。要求:
下列古文中没有体现矛盾普遍性的是
最新回复
(
0
)