对于关键码序列18,30,35,10,46,38,5,40进行堆排序(假定堆的根结点为最小关键码),在初始建堆过程中需进行的关键码交换次数为【 】。

admin2010-05-13  45

问题 对于关键码序列18,30,35,10,46,38,5,40进行堆排序(假定堆的根结点为最小关键码),在初始建堆过程中需进行的关键码交换次数为【  】。

选项

答案3

解析 根据采用筛分的方法建堆的方法如下,首先将所有要排序的关键码放在一棵完全二叉树的各结点上,然后从i[n/2]的结点Ki开始,逐步把以K[n/2]-1、K[n/2]- 2…Kn为根的子树排为堆,直到以K1为根的子树排成堆,就完成了建堆过程。按照上述过程写出完全二又树,排序后发现需进行的关键码交换次数为3次。
转载请注明原文地址:https://kaotiyun.com/show/ygSZ777K
0

相关试题推荐
最新回复(0)