数据结构 堆排序我算出来貌似没答案啊4.一组记录的排序码为(46,79,56,38,40,84),则利用堆排序的方法建立的初始推为( ). (A)79,46,56,38,40,80 (B)84,79,56,38,40,46(C)84,79,56,46,40,38 (D)84,56,79,40,46,38

问题描述:

数据结构 堆排序
我算出来貌似没答案啊
4.一组记录的排序码为(46,79,56,38,40,84),则利用堆排序的方法建立的初始推为( ).
(A)79,46,56,38,40,80 (B)84,79,56,38,40,46
(C)84,79,56,46,40,38 (D)84,56,79,40,46,38

答案是B
由46,79,56,38,40,84
构造初始结构:
46
79 56
36 40 84
从最后一个非叶子结点开始,依次调整:
46
79 84
36 40 56
84
79 46
36 40 56
84
79 56
36 40 46
即84,79,56,38,40,46