首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
最小最大堆(min max Heap)是一种特定的堆,其最小层和最大层交替出现,根总是处于最小层。最小最大堆中的任一结点的关键字值总是在以它为根的子树中的所有元素中最小(或最大)。如图所示为一最小最大堆。 (1)画出在图中插入关键字为5的结点后的
最小最大堆(min max Heap)是一种特定的堆,其最小层和最大层交替出现,根总是处于最小层。最小最大堆中的任一结点的关键字值总是在以它为根的子树中的所有元素中最小(或最大)。如图所示为一最小最大堆。 (1)画出在图中插入关键字为5的结点后的
admin
2017-01-04
51
问题
最小最大堆(min max Heap)是一种特定的堆,其最小层和最大层交替出现,根总是处于最小层。最小最大堆中的任一结点的关键字值总是在以它为根的子树中的所有元素中最小(或最大)。如图所示为一最小最大堆。
(1)画出在图中插入关键字为5的结点后的最小最大堆。
(2)画出在图中插入关键字为80的结点后的最小最大堆。
(3)编写一算法实现最小最大堆的插入功能。假定最小最大堆存放在数组中,关键字为整数。
选项
答案
此题考查的知识点是堆的算法。将插入的元素放到最后,然后调整,方法同第13题。 (1)加入关键字值为5的结点后,最小最大堆如下图。 [*] (2)加入关键字值为80的结点后,最小最大堆如下图。 [*] (3)从插入位置进行调整,调整过程由下到上。首先根据元素个数求出插入元素所在层次数,以确定其插入层是最大层还是最小层。若插入元素在最大层,则先比较插入元素是否比双亲小,如是,则先交换,之后,将小堆与祖先调堆,直到满足小堆定义或到达根结点:若插入元素不小于双亲,则调大堆,直到满足大堆定义。若插入结点在最小层,则先比较插入元素是否比双亲大,如是,则先交换,之后,将大堆与祖先调堆;若插入结点在最小层且小于双亲,则将小堆与祖先调堆,直到满足小堆定义或到达根结点。 void MinMaxHeapIns(RecType R[],int n){ //假设R[1..n一1]是最小最大堆,插入第n个元素,把R[1..n]调成最小最大堆 j=n;R[0]=R[j]; h=log
2
n+1; //求高度 if(h%2==0){ //插入元素在偶数层,是最大层 i=n/2; if(R[0].key<R[i].key){ //插入元素小于双亲,先与双亲交换,然后调小堆 R[j]=R[i]; j=i/4; while(j>0&&R[j]>R[i]){ R[i]=R[j];i=j;j=i/4;} //调小堆 R[i]=R[0]i } else{ //插入元素大于双亲,调大堆 i=n;j=i/4; while(j>0&&R[j]<R[i]){R[i]=R[1];i=j;j=i/4;} R[i]=R[0]; } } else{ //插入元素在奇数层,是最小层 i=n/2: if(R[0].key>R[i].key){ //插入元素大于双亲,先与双亲交换,然后调大堆 R[j]=R[i]; j=i/4; while(j>0&&R[j]<R[i]){ R[i]:R[j]=i:j;j=i/4; } //调大堆 R[i]=R[0]; } else{ //插入元素小于双亲,调小堆 i=n;j=i/4; while(j>0&&R[j]>R[i]){ R[i]=R[j];i=j;j=i/4;} R[i]=R[0]; } } }
解析
转载请注明原文地址:https://kaotiyun.com/show/9QRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
试结合新民主主义革命不同历史时期的历史实际,阐述中国共产党在处理同资产阶级复杂关系问题上的做法、结果及其历史经验。
概述文艺复兴的背景和代表人物。(吉林大学2013年历史学基础真题)
简述弭兵之会的背景、过程和结果。
结合诸条约内容简述中国社会沦为半殖民地半封建社会的过程。
如何全面分析十月革命的历史条件及特点?
“二战”爆发的原因是多种因素综合作用的结果,其中最根本的因素是()。
记载了用竿标日测影以求日高的方法,并认识了勾股定理的算书是()。
三个进程P1、P2、P3互斥使用一个包含N(N>O)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用getev
试编写一个非递归算法,实现求以二叉链表存储的二叉树中q结点的祖先。
某计算机采用Cache一主存一磁盘三级存储系统。Cache的访问时间为t1ns,命中率为p1;若Cache未命中,CPU需直接访问主存,访问时间为t2ns,主存命中率为p2;若所需数据字不在主存中,则访问主存未命中、将包含所需数据字的磁盘数据块装入主存共需
随机试题
考生文件夹下存在一个数据库文件“sampl.accdb”,里面已经设计好表对象“tStud”。请按照以下要求,完成对表的修改:完成上述操作后,将“备注”字段删除。
借贷记账法下账户借方登记()。
Paget骨病
自动曝光控制系统,探测器的种类有
中药黄芩中的主要有效成分是
A.主要疾病B.曾患过的疾病C.家族主要成员所患的疾病D.并发症E.伴发病在诊断中排在第二位的应是
妊娠有乳汁一般出现在
根据表1、2,下列推断不正确的是()。
全国人大常委会公告:《刑法》第228条、第342条、第410条规定的“违反土地管理法规”是指违反土地管理法、森林法、草原法等法律以及有关行政法规中关于土地管理的规定。该解释属于()
Noonecouldseetime,stopthepassingoftime【C1】________quickenitspassing.Butwe【C2】________theearthrevolves(自转)while
最新回复
(
0
)