首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知由n—1个关键字组成的序列(K1,K2,…,Kn—1)是大顶堆,现在增加一个关键字Kn,要求将关键字序列(K1,K2,…,Kn—1,Kn),重新调整为大顶堆。请完成以下要求: 根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
已知由n—1个关键字组成的序列(K1,K2,…,Kn—1)是大顶堆,现在增加一个关键字Kn,要求将关键字序列(K1,K2,…,Kn—1,Kn),重新调整为大顶堆。请完成以下要求: 根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
admin
2017-04-28
100
问题
已知由n—1个关键字组成的序列(K
1
,K
2
,…,K
n—1
)是大顶堆,现在增加一个关键字K
n
,要求将关键字序列(K
1
,K
2
,…,K
n—1
,K
n
),重新调整为大顶堆。请完成以下要求:
根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
选项
答案
算法实现如下: #define n 100; //宏定义n常量,由用户自定义结点个数 int K[n]; //关键字序列 void heap() { int i=n/2; //找到最后一个结点的父母结点 if(n%2==1) //当n是右结点时 { if (K[i] <K[n—1] &&K fn—ll >K fnl)swap(K[n—1] ,K [i]);//swap()实现交换两个元素 if (K[i]<K[n]&&K[n—l] <K [n)) swap(K[nl ,K [i]); } else //当n是左结点 { if(K[主]<K[n])swap(K[n],K[i]); } i=1/2; while (i>0) //依次向上调整 if {K [i] <K [n—1] &&K [n—1] >K [n] ) swap (K [n—1] ,K [i]) ; if (K [j] <K [n]& &K [n—1] <K [n] ) swap (K [n] ,K [i]) ; i=1/2; } }
解析
转载请注明原文地址:https://kaotiyun.com/show/zJRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
罗斯福新政被称为是“3R”改革即Recovery(复兴)、Relief(救济)、Reform(改革),其中能反映Relief方面的内容是()。
在粉碎国民党对陕北的重点进攻时,西北野战军采用的“蘑菇”战术实际上属于()
下列选项中,对东汉度田问题的描述中,不正确的是()
下列事件:①上党战役②九三学社成立③“一二·一”惨案④《双十协定》签订,按照时间顺序排列正确的是()。
下列选项中不属于《国际联盟盟约》内容的是()。
“瓜步之战”发生在下列哪两个政权之间?()
下列关于1929~1933年经济危机的描述,错误的有()。
美国主张建立国际联盟的主要目的是()。
在巴黎和会上,法国要求严厉制裁德国的目的是()。
在协议数据单元中,控制信息所不包括的内容是()。
随机试题
5岁小儿标准身高是
风寒外束,肺气壅遏,咳嗽者,宜选用的药物是()外感风寒所致表实无汗者,宜选用的药物是()
对痰液过多且咳嗽无力者需采取的措施是
某离心式空气压缩机,空气进口压力P1=101300Pa,出口压力P2=155000Pa,进口温度t=20℃,空气的气体常数R=287.64J/(kg.k),等熵指数K=1.4,多变指数n=1.59,则压缩质量1kg的空气的绝热功为()。
非土废弃物的设计系数可采用()。
经海关批准可以存人物流中心的货物有:
由于世界人口急剧增长。加上极端气候及病虫害所带来的粮食减产,目前全球有约10亿人在挨饿,数以百万计的人陷入更深的贫困,世界粮食安全问题日益突出。由此可见()。
孙中山1894年11月在创立革命团体兴中会时就指出:“方今强邻环列,虎视鹰瞵,久垂涎于中华五金之富,物产之饶。蚕食鲸吞,已效尤于接踵;瓜分豆剖,实堪虑于目前。有心人不禁大声疾呼,亟拯斯民于水火,切扶大厦之将倾。”由此,他喊出的时代最强音是()
ItisgenerallyrecognizedintheworldthatthesecondGulfWarinIraqisacrucialtestofhigh-speedweb.Fordecades,Ameri
使用说明中的词语,给出图1-1中的外部实体E1~E4的名称。使用说明中的同语,给出图1-2中的数据存储D1~D5的名称。
最新回复
(
0
)