首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
写一个HeapInsen(R,key)算法,将关键字插入到堆尺中,并保证插入后R仍是堆。请分析算法的时间复杂度。提示:将key先插入R中已有元素的尾部(即原堆的长度加l的位置,插入后堆的长度加1),然后自下往上调整,使插入的关键字满足堆性质。
写一个HeapInsen(R,key)算法,将关键字插入到堆尺中,并保证插入后R仍是堆。请分析算法的时间复杂度。提示:将key先插入R中已有元素的尾部(即原堆的长度加l的位置,插入后堆的长度加1),然后自下往上调整,使插入的关键字满足堆性质。
admin
2019-08-15
55
问题
写一个HeapInsen(R,key)算法,将关键字插入到堆尺中,并保证插入后R仍是堆。请分析算法的时间复杂度。提示:将key先插入R中已有元素的尾部(即原堆的长度加l的位置,插入后堆的长度加1),然后自下往上调整,使插入的关键字满足堆性质。
选项
答案
算法如下: typedef struct{ KeyType key; InfoType otherinfo; }RecType; typedef struct{ RecType Rec[MaxNum]; //MaxNum是一个常量 int len; }SeqList; HeapInsert(SeqList R,KeyType key){ int i,j; R.Rec[++R.1en].key=key; //增加新值到原堆中已有元素的尾部且堆的长度加1 i=R.len/2; j=R.1en; while(i>0){ //调整为堆 if(R.Rec[i].key<R.Rec[j].key){ R.Rec[0]=R.Rec[i];R.Ree[i]=R.Rec[j];R.Rec[i]=R.Rec[0]; } j=i;i=i/2; //继续自底向上查找 } } 设该堆对应的树高为h,则满足h≤log
2
R.1en,调整是自底向上查找,最多查找到树根,所以时间复杂度为O(log
2
R.1en)。
解析
转载请注明原文地址:https://kaotiyun.com/show/nKCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
希特勒打出民族主义的旗号而获得群众的广泛支持,主要原因是()。
西周的分封制相当发达,是西周的重要政治制度,也是西周历史的一个显著特点。根据所学知识,回答问题西周建立之后,派遣同姓贵族和异姓贵族及归顺的异族首领到各地区,建立国家以藩屏护卫周室,分别分在卫、鲁、唐、燕的贵族是()
米勒兰事件
在一个HDLC帧的数据中,如果出现了000111111011这样的流,请问发送到信道上它将会变成()。
真值0在原码、反码和补码机器数形式下()。
文件系统的主要目的是()。
在操作系统层次结构中,()是操作系统的核心部分,它位于最内层。
以下关于CPU的叙述中,错误的是()。
随机试题
按照习近平总书记提出的“对党忠诚、服务人民、执法公正、纪律严明”总要求,公安民警应不忘初心,牢记使命,努力推进各项工作。下列民警行为与上述总要求不相符的是:
简述终身教育思潮。
在对接平焊缝中,将余高刨平,使其与母材平齐是最理想的。
导致急性肠梗阻的肠扭转角度至少是
探诊的要点如下,不正确的为
以下不符合账簿平时管理的具体要求的是()。
激发和培养学生学习动机的途径有哪些?
钓螃蟹的时候在竹篓中放一群螃蟹,不必盖上盖子,螃蟹是爬不出来的。因为当有两只或两只以上的螃蟹时,每一只都争先恐后地朝出口处爬。但篓口很窄,当一只螃蟹爬到篓口时,其余的螃蟹就会用威猛的大钳子抓住它,最终把它拖到下层,由另一只强大的螃蟹踩着它向上爬。如此循环往
Managingglobalorganizationshasbeenabusinesschallengeforcenturies.Butthenatureofthetaskischangingwiththeaccel
下列属于临时性资源的是 Ⅰ.内存 Ⅱ.时钟中断 Ⅲ.同步信号 Ⅳ.外部设备 Ⅴ.消息
最新回复
(
0
)