全部科目 > 软件设计师 >
2023年上半年 上午试卷 综合知识
第 63 题
知识点 堆排序  
章/节 计算机软件知识  
 
 
对—组数据进行排序,要求排序算法的时间复杂度为O(nlgn),且要求排序是稳定的,则可采用(62)算法。若要求排序算法的时间复杂度为O(nlgn),且在原数据上进行,即空间复杂度为O(1),则可采用(63)算法。
 
  A.  直接插入排序
 
  B.  堆排序
 
  C.  快速排序
 
  D.  归并排序




 
 
相关试题     计算机软件知识 

  第65题    2022年上半年  
采用Prim 算法求解下图的最小生成树,采用的算法设计策略是(64)。该最小生成树的权值是(65)。

  第23题    2012年上半年  

若某企业拥有的总资金数为15,投资4个项目PI、P2、P3、P4,各项目需要的最大资金数分别是6、8、8、10,企业资金情况如图a所示。P1新申请2个资金,P2新申请1个资金..


  第56题    2013年下半年  
计算机系统的软硬件故障可能会造成数据库中的数据被破坏。为了防止这一问题,通常需要(56),以便发生故障时恢复数据库。

 
知识点讲解
· 堆排序
 
        堆排序
        对于n个元素的关键字序列K1,K2,…,Kn,当且仅当所有关键字都满足下列性质时称其为堆,即
        
        若堆顶为最小元素,则称为小根堆;若堆顶为最大元素,则称为大根堆。
        堆排序的基本思想是:对一组待排序记录的关键字,首先把它们按堆的定义排成一个堆序列,从而输出堆顶的最小关键字(对于小根堆而言),然后将剩余的关键字再调整成新堆,便得到次小的关键字,如此反复进行,直到全部关键字排成有序序列为止。
        对于记录数较少的文件来说,堆排序的优越性并不明显,但对大量的记录来说堆排序是很有效的。堆排序的整个算法时间是由建立堆和不断调整堆这两部分时间代价构成的,堆排序算法的时间复杂度为O(nlog2n)。此外,堆排序只需要一个记录大小的辅助空间。但是堆排序是一种不稳定的排序方法。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2026 All Rights Reserved
软考在线版权所有