首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
对关键码集合K={22,11,38,68,43,6,10,4
[单选题]
对关键码集合K={22,11,38,68,43,6,10,48},用筛选法创建最小堆时,从关键码( )开始调整
22
38
68
48
查看正确选项
添加笔记
求解答(18)
邀请回答
收藏(422)
分享
21个回答
添加回答
3
菜鸟九八号
最小堆的构建:
初始数组为:9,3,7,6,5,1,10,2
按照完全二叉树,将数字依次填入。
填入后,找到
最后一个结点
(本示例为数字2的节点),从它的
父节点
(本示例为数字6的节点)
开始调整。根据性质,
小的数字往上移动
;至此,第1次调整完成。
注意,被调整的节点,还有子节点的情况,需要递归进行调整。
第二次调整,是数字6的节点数组下标小1的节点(比数字6的下标小1的节点是数字7的节点),
用刚才的规则进行调整。以此类推,直到调整到根节点。
发表于 2020-03-05 11:06:32
回复(0)
1
goodluck~
筛选法应该就是heapify的过程 如果从索引1开始的话 第一个非叶子节点就是8/2=4 从第四个开始
发表于 2020-02-24 10:34:07
回复(0)
1
每天都说我是过儿
啥意思啊 两个集合都不一样
发表于 2018-12-28 21:58:49
回复(0)
17
梅梅201803241656278
筛选法就是开始按现有的顺序从上到下,从左到右放到一个完全二叉树里面。
然后把这个树调节成堆。调节的时候从最后一个有儿子的节点开始。 也就是从下往上,从右往
左找,找到的第一个有孩子的节点开
始。依次把各个节点及下面的孩子组成的树调
节成堆。
筛选法建堆例子(侵删):
至于本题,打扰了。
发表于 2018-12-29 19:10:55
回复(3)
14
everythingisok
22
/ \
11 38
/ \ / \
68 43 6 10
/
48
从下往上,从右到左的顺序,从第一个非叶结点开始调整
发表于 2020-05-26 16:41:56
回复(0)
5
codeDonald
68
就是上面说的从上到下排树,从下到上找第一个有叶子节点的节点
发表于 2019-04-23 20:22:07
回复(0)
4
飞鸿踏雪泥9975
这题有毒,正确答案应该是6,11,10,48,43,38,22,68
发表于 2019-08-15 10:06:48
回复(1)
3
林小象
68是对的呀,68是最后一个有孩子的节点,68>48,
发表于 2019-09-28 20:04:49
回复(0)
2
辉煞星耀
从最后一个
非叶子结点
开始调整
发表于 2021-05-16 01:13:36
回复(0)
0
元yuanyun
调节的时候,当创建最小堆时,从下往上,从右往左的顺序,从第一个非叶结点开始调整。
发表于 2022-04-08 21:34:37
回复(0)
0
已注销
二叉树最后一个有孩子的节点
发表于 2022-03-12 22:19:57
回复(0)
0
Juventus-小九
按现有顺序从上到下,从左到右放到一个完全二叉树里面,然后把这个树调节成堆。
发表于 2022-02-18 15:58:58
回复(0)
0
泽思
筛选法就是
(1)开始按现有的顺序从上到下,从左到右放到一个完全二叉树里面。
(2)然后把这个树调节成堆。
调节的时候从最后一个有儿子的节点开始。
也就是从下往上,从右往左找,找到的第一个有孩子的节点开始。
依次把各个节点及下面的孩子组成的树调节成堆。
发表于 2021-07-13 13:33:34
回复(0)
0
健康成长玛卡巴卡
不能边读入边建堆吗?
发表于 2021-04-19 22:39:38
回复(0)
0
辉耀565
堆调整是从最后一个非叶节点开始调整的
发表于 2021-04-05 16:25:55
回复(0)
0
Mr__Cao
第一个看68没问题,68子节点是10和48,不需要调整啊,之后看38,38子节点是43和6,这时候不就要交换38和43吗,这不就是第一个调整的点吗
发表于 2020-12-27 10:00:42
回复(0)
0
Simon..
<p><em>我们称这个自堆顶至叶子结点的调整过程为筛选</em></p><p><br></p><p><em>从一个无序序列构建堆的过程就是一个反复筛选的过程。</em></p><p><br></p><p><strong><em>若将此序列看成一个完全二叉树,则最后一个非终端节点是第 N/2 向下取整个元素,由此筛选只需从第N/2个元素开始。</em></strong></p><p><br></p><p>void HeapSort(HeapType &H)</p><p> for(i = H.length/2; i >0; i—)</p><p><br></p><p><em>上述内容参考严书数据结构 280-282页 </em></p><p><br></p><p>对于本题而言 8/2=4 第四个元素即68</p><p><br></p><p><br></p><p><br></p>
发表于 2020-11-25 20:55:20
回复(0)
0
传说中的小二哥
1
发表于 2019-12-27 22:25:59
回复(0)
0
初心w50t2
初始建堆是从完全二叉树的第i(i=n/2)个结点开始调整。n表示序列有n个数。
发表于 2019-09-26 15:23:38
回复(0)
0
小🐮客
做得一脸懵比
发表于 2019-09-22 10:45:15
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
C++工程师
iOS工程师
系统工程师
运维工程师
前端工程师
算法工程师
测试开发工程师
测试工程师
2019
堆
360集团
Java工程师
来自:
360公司-2019校...
上传者:
小小
难度:
21条回答
422收藏
6920浏览
热门推荐
相关试题
下列叙述中不正确的一项是:
数据库工程师
搜狐畅游
游戏工程师
2020
公关
商务
人力资源
系统工程师
评论
(6)
五对夫妇甲,乙,丙,丁,戊举行家庭...
360集团
智力题
评论
(22)
来自
360公司2014校招笔试卷
(verbal)最近的研究显示,许...
言语理解与表达
2019
普华永道
人力资源
审计
税务服务
风险管理
管理咨询
行政管理
评论
(2)
来自
职能类模拟题14
下列程序打印结果为( )...
360集团
Python
算法工程师
2019
评论
(53)
来自
360公司-2019校招...
函数的单调递增区间是()
360集团
组合数学
算法工程师
2019
评论
(8)
来自
360公司-2019校招...
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题