首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】 堆数据结构定义如下:对于n个元素的关键字序列{a1,a2,…,an},当且仅当满足下列关系时称其为堆。 在一个堆中,若堆顶元素为最大元素,则称为大顶堆;若堆顶元素为最小元素
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】 堆数据结构定义如下:对于n个元素的关键字序列{a1,a2,…,an},当且仅当满足下列关系时称其为堆。 在一个堆中,若堆顶元素为最大元素,则称为大顶堆;若堆顶元素为最小元素
admin
2014-11-13
87
问题
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。
【说明】
堆数据结构定义如下:对于n个元素的关键字序列{a
1
,a
2
,…,a
n
},当且仅当满足下列关系时称其为堆。
在一个堆中,若堆顶元素为最大元素,则称为大顶堆;若堆顶元素为最小元素,则称为小顶堆。堆常用完全二叉树表示,图15.2是一个大顶堆的例子。
堆数据结构常用于优先队列中,以维护由一组元素构成的集合。对应于两类堆结构,优先队列也有最大优先队列和最小优先队列,其中最大优先队列采用大顶堆,最小优先队列采用小顶堆。以下考虑最大优先队列。假设现己建好大顶堆A,且已经实现了调整堆的函数heapify(A,n,index)。下面将C代码中需要完善的三个函数说明如下:
(1)heapMaximum(A).返回大顶堆A中的最大元素。
(2)heapExtractMax(A):去掉并返回大顶堆A的最大元素,将最后一个元素“提前”到堆顶位置,并将剩余元素调整成大项堆。
(3)maxHeaplnsert(A,key).把元素key插入到大顶堆A的最后位置,再将A调整成大顶堆。优先队列采用顺序存储方式,其存储结构定义如下:
#definePARENT(i)i/2
typedefstructarray{
int*intarray;//优先队列的存储空间首地址
intarraysize;//优先队列的长度
intcapacity;//优先队列存储空间的容量
}ARRAY;
【C代码】
(1)函数heapMaximum
intheapMaximum(ARRAY*A)(return(1))
(2)函数heapExtractMax
intheapExtractMax(ARRAY*A)(
intmax;
max=A->int—array[0];
(2);
A一>array_size-一;
Heapify(A,A一>array—size,0);//将剩余元素调整成大顶堆
returnmax;
}
(3)函数maxHeaplnsert
intmaxHeaplnsert(ARRAY*A,intkey){
inti,*P;
if(A一>array一size==A一>capacity){//存储空间的容量不够时扩充空间
p=(int*)realloc(A一>intarray,A一>capacity*2*sizeof(int));
if(!P)return一1;
A一>int_array=P;
A一>capacity=2*A一>capacity;
}
A一>array_size++:
i=(3);
while(i>0&&(4){
A一>int_array
=A一>int_array[PARENT(i)];
i=PARENT(i);
}
(5);
return0;
}
根据以上c代码,函数heapMaximum,heapExtractMax和maxHeaplnsert的时间复杂度的上界分别为(6)、(7)和(8)(用O符号表示)。
选项
答案
(6)O(1) (7)O(1gn) (8)O(1gn)
解析
heapMaximum函数不需要进行比较,直接输出存储空间首地址中的内容。时间复杂度的上界O(1)。heapExtractMax函数将最后一个元素“提前”到堆顶位置,并将剩余元素调整成大顶堆,在最坏的情况下,需要从根节点下滤比较到最底层,时间复杂度的上界O(lgn)。maxHeaplnsert(A,key)函数把元素key插入到大顶堆A的最后位置,再将A调整成大顶堆。在最坏的情况下,需要从最底层上滤比较到根节点,时间复杂度的上界O(lgn)。
转载请注明原文地址:https://kaotiyun.com/show/ZZDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
启动init进程前,不需要经过______步骤。A.LIIO加载内核B.检测内存C.加载文件系统D.启动网络支持根据说明中inittab文件的内容,系统引导成功后,工作在______状态。A.单用户字符模式
阅读以下说明,回答问题1至问题6。【说明】某公司在WindowsServer2003中安装IIS6.0来配置Web服务器,域名为www.abc.com。
阅读以下说明,回答问题1至问题5。【说明】通过SNMP可以获得网络中各种设备的状态信息,还能对网络设备进行控制。在WindowsServer2003中可以采用IPSec来保护SNMP通信,配置管理站的操作步骤为:先创建筛选器,对输入的分组进
销售部的网络号是(1),广播地址是(2):技术部的网络号是(3),广播地址是(4);每个子网可用的IP地址有(5)个。Linux网关计算机有两个网络接口(eth0和eth1),每个接口与对应的子网相连接。该计算机/etc/sysconfig,/
请阅读下列SwitchA的配置信息,并在(1)~(5)处解释该语句的作用。Switch>enable(进入特权模式)Switch#configterminal(进入配置模式)Switch(config)#hostnameSwi
请阅读下列SwitchA的配置信息,并在(1)~(5)处解释该语句的作用。Switch>enable(进入特权模式)Switch#configterminal(进入配置模式)Switch(config)#hostnameSwi
完成下列命令行,对网络接口进行地址初始化配置。firewall(config)#ipaddressinside(1)(2)firewall(config)#ipaddressoutside(3)(4)以下命令针对网络服务的端口配
在控制面板的“添加/删除程序”对话框中选择(1),然后进入“应用程序服务器”选项,在(2)组件复选框中选择“文件传输协议(FTP)服务”,就可以在Windows2003中安装FTP服务。(1)A.更改或删除程序B.添加新程序C.添加/删除
阅读以下说明,回答问题1至问题6。【说明】某公司要在Windows2003Server上搭建内部FTP服务器,服务器分配有一个静态的公网IP地址200.115.12.3。
阅读以下说明,回答问题1至问题3。【说明】某校园网物理地点分布如图1-1所示,拓扑结构如图1-2所示:
随机试题
下列不属于代表性误差产生的原因的是()。
驾驶机动车在这个路口可以直接向右转弯。
A.骨髓瘤肾病B.淀粉样变性C.原发性小血管炎肾损害D.Goodpasture综合征E.狼疮性肾炎男性患者,52岁,发热、咳嗽半年余,蛋白尿、镜下血尿2个月,消瘦、乏力,辅助检查示贫血、红细胞沉降率快,C
某市属工程公司在市内高架线路的混凝土工程施工过程中出现了局部坍塌事故。调查组经技术鉴定认为是施工单位未向监理报批,擅自拆模过早,混凝土未达到足够的强度造成的。由于及时发现,没有造成重大损失,估计损失不足4万元,且未造成人身伤亡。此质量事故的
根据韩国的个人所得税制度的规定,下列关于应税所得的说法中不正确的是()。
为了确保国家课税权的实现,纳税人通过行政复议寻求法律保护的前提条件之一,是必须事先履行税务行政执法机关认定的纳税义务,否则不予受理。这一做法适用的原则是()。(2012年)
下列关于分批法的说法中,正确的有()。
【2015年菏泽市】教师必须十分重视自身的发展,做到以身作则,为人师表,这体现了教师劳动的哪一特点?()
蝉鸣:盛夏:时令
(1)Ralphfeltakindofaffectionatereverencefortheconch(海螺),eventhoughhehadfishedthethingoutofthelagoonhimsel
最新回复
(
0
)