首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
二叉排序树采用二叉链表存储。写一个算法,删除结点值是X的结点。要求删除该结点后,此树仍然是一棵二叉排序树,并且高度没有增长(注意:可不考虑被删除的结点是根的情况)。
二叉排序树采用二叉链表存储。写一个算法,删除结点值是X的结点。要求删除该结点后,此树仍然是一棵二叉排序树,并且高度没有增长(注意:可不考虑被删除的结点是根的情况)。
admin
2019-08-15
48
问题
二叉排序树采用二叉链表存储。写一个算法,删除结点值是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
学硕统考专业
相关试题推荐
()时,为补充兵力,开拓财源,“料民于太原”(今山西西南部)。料民就是清查民数,以便于征兵,结果引起奴隶和平民的反抗。这表明西周王朝已失去了对社会的控制力量。
在1875年宪法中关于法国立法权的叙述,不正确的是()。
下列关于民族大迁徙的说法不正确的是()。
经六朝时期的发展,南方形成了三个农业发达地区即()。
若干个等待访问磁盘者依次要访问的柱面为20,44,40,4,80,12,76,假设每移动一个柱面需要3毫秒时间,移动臂当前位于40号柱面,请按下列算法分别计算为完成上述各次访问总共花费的寻找时间。(1)先来先服务算法;(2)最短寻找时间
图的D搜索类似于BFS,不同之处在于使用栈代替BFS中的队列,入/出队列的操作作为入/出栈的操作,即当一个顶点的所有邻接结点被搜索后,下一个搜索出发点应该是最近入栈(栈顶)的顶点。(1)用邻接表作为存储结构,写一个D搜索算法;(2)用D搜索方法
请利用队列的基本操作写出判定一棵二叉树是否为完全二叉树的算法。要求以二叉链表作为二叉树的存储结构。函数原型为:intIsFull_Bitree(BitreeT)。
设有一个双向链表h,每个结点中除有prior,data和next三个域外,还有一个访问频度域freq,在链表被起用之前,每个结点中的freq域都被初始化为零。每当进行LocateNode(h,x)运算时,令元素值为x的结点中freq域中的值加一,并调整表中
由元素序列(27,16,75,38,51)构造平衡二叉树,则首次出现的最小不平衡子树的根(即离插入结点最近且平衡因子的绝对值为2的结点)是()。
随机试题
结核性腹膜炎手术治疗的指征不包括
当归主要含有黄连主要含有
某患者明晨将行冠状动脉搭桥手术,今晚影响其睡眠的首要因素最可能是
接入网是由()的一系列传送实体组成的。
在通常情况下,脑组织的能量来源于()。
下列不属于哺乳类的动物是()。
养生保健是一门科学性很强的学问,要因人、因地、因时而异。社会上流行很广且被多数人追捧的养生保健方法,不一定适合自己。因为,每个人的养生方法都要依据其生命体征、当时的健康状况和环境条件来定,时间、地点、条件变了,人的状态变了,养生方法也要随之相应改变。这段文
面对能源危机,一些国家开始寻找替代能源,使用玉米加工车用乙醇汽油已不再是新鲜事了。因此不少人认为,使用玉米生产能源,既可以消化库存的陈化粮,又发展了石油替代能源,这将是未来能源发展的趋势之一,是利国利民的一项政策。下列哪项如果为真,不能削弱上述结
设f(x)是以l为周期的周期函数,则之值()
【B1】【B14】
最新回复
(
0
)