早教吧作业答案频道 -->其他-->
一组记录的排序码(46,79,56,38,40,84),则利用堆排序的方法建立的初始堆为()A)(79,46,56,38,40,84)B)(84,79,56,38,40,46)C)(84,79,56,46,40,38)D)(84,56,79,40,38
题目详情
一组记录的排序码(46,79,56,38,40,84),则利用堆排序的方法建立的初始堆为()
A) (79,46,56,38,40,84)
B) (84,79,56,38,40,46)
C) (84,79,56,46,40,38)
D) (84,56,79,40,38,46)
讲一下过程。
A) (79,46,56,38,40,84)
B) (84,79,56,38,40,46)
C) (84,79,56,46,40,38)
D) (84,56,79,40,38,46)
讲一下过程。
▼优质解答
答案和解析
我排序的过程,跟你不一样,不过结果是对的。先把数据构建成最大堆。就是根节点比它的2个子节点要大。
56
50 48
这就市最大堆
你的原数据
46
79 56
38 40 84
84比它的根大,所以84跟56换
46
79 84
38 40 56
38和40都比它的根节点79小,所以不动
然后看第2层,84比46大,所以拿它跟父节点的46换
84
79 46
38 40 56
46换下去还市比它的子节点56小,再换(这个要注意,可能小的被换下来,但是仍然比下面的大,就继续换下去)
84
79 56
38 40 46
目前就已经是最大堆了
然后是堆排序,
拿最上面的84,跟46换,
46
79 56
38 40 【84】
84换好以后再也不能动了,然后再构建剩下的6个数的最大堆:
46
79 56
38 40 【84】
40,38都比79小不动,56比父节点46大,所以换:
56
79 46
38 40 【84】
接下来市79,79比56大,换
79
56 46
38 40 【84】
最大堆完成(84已经不动了,可以不考虑它了),然后79跟最后一个40换,
同样,换了以后,79也不能动,而且以后的排序也不用考虑它
40
56 46
38 【79】 【84】
然后再构建最大堆
38,不动,46跟40换
46
56 40
38 【79】 【84】
然后56跟46换
56
46 40
38 【79】 【84】
又排好了,然后56跟38换
38
46 40
【56】 【79】 【84】
再排序(排序过程不说了),排好如下:
46
40 38
【56】 【79】 【84】
46跟38换
38
40 【46】
【56】 【79】 【84】
再排序:
40
38 【46】
【56】 【79】 【84】
再首尾相换
38
【40】 【46】
【56】 【79】 【84】
结束。
从头开始输出:38 40 46 56 79 84 是最后结果。
56
50 48
这就市最大堆
你的原数据
46
79 56
38 40 84
84比它的根大,所以84跟56换
46
79 84
38 40 56
38和40都比它的根节点79小,所以不动
然后看第2层,84比46大,所以拿它跟父节点的46换
84
79 46
38 40 56
46换下去还市比它的子节点56小,再换(这个要注意,可能小的被换下来,但是仍然比下面的大,就继续换下去)
84
79 56
38 40 46
目前就已经是最大堆了
然后是堆排序,
拿最上面的84,跟46换,
46
79 56
38 40 【84】
84换好以后再也不能动了,然后再构建剩下的6个数的最大堆:
46
79 56
38 40 【84】
40,38都比79小不动,56比父节点46大,所以换:
56
79 46
38 40 【84】
接下来市79,79比56大,换
79
56 46
38 40 【84】
最大堆完成(84已经不动了,可以不考虑它了),然后79跟最后一个40换,
同样,换了以后,79也不能动,而且以后的排序也不用考虑它
40
56 46
38 【79】 【84】
然后再构建最大堆
38,不动,46跟40换
46
56 40
38 【79】 【84】
然后56跟46换
56
46 40
38 【79】 【84】
又排好了,然后56跟38换
38
46 40
【56】 【79】 【84】
再排序(排序过程不说了),排好如下:
46
40 38
【56】 【79】 【84】
46跟38换
38
40 【46】
【56】 【79】 【84】
再排序:
40
38 【46】
【56】 【79】 【84】
再首尾相换
38
【40】 【46】
【56】 【79】 【84】
结束。
从头开始输出:38 40 46 56 79 84 是最后结果。
看了 一组记录的排序码(46,79...的网友还看了以下:
一本书,小方看了40页,小军比小方少看5%,小方比小林少看5%,小光比小方多看6%(1)40x(1 2020-05-14 …
简便计算83x5/84-79/84=(5/8+1/27)x8+19/27= 2020-05-17 …
1的平方-3的平方+5的平方-7的平方+…+77的平方-79的平方+81的平方这道题怎样算简便 2020-06-03 …
如图,把正方形的土地分成如下四个长方形(它们的面积分别为10平方米、20平方米、30平方米、40平 2020-06-13 …
一组记录的排序码(46,79,56,38,40,84),则利用堆排序的方法建立的初始堆为()A)( 2020-07-17 …
一组记为{46,79,56,38,84,40},则采用选择排序法按升序排列时第一趟排列结果是 2020-07-17 …
脱式计算,能简算的要简算.0.265×1.7+1.35×0.1723.4÷7.8-2.10.75× 2020-07-19 …
太阳光与水平方向成40°角,要使太阳光经平面镜反射,反射光沿水平方向传播,则平面镜与水平方向所成的角 2020-11-02 …
下列关于84消毒剂(主要成分是NaClO)的使用和保存不正确的是()A.将消毒液放在阴凉、避光的地方 2020-12-07 …
40.9公顷40公顷90平方米0.49平方千米40900平方米机40.9公顷40公顷90平方米0.4 2020-12-13 …