首页 > 试题广场 > 下列排序算法中,在待排序数据有序的情况下,花费时间最多的是( )
[单选题]
下列排序算法中,在待排序数据有序的情况下,花费时间最多的是( )
  • 快速排序
  • 希尔排序
  • 冒泡排序
  • 堆排序

8个回答

添加回答
推荐
A
待排序数据有序就是快
   查看全部
编辑于 2015-02-10 11:43:35 回复(1)
快速排序是把数列按一个枢纽值分成两部分分别排序,所以效率高。但是若原数据为有序,并且选择的枢纽值为第一个数时,那在分块时会将一个第一个数前面的数(也就是没有)分为一块,将除第一个数的所有数分成了另一块。这样一来,每一次分块都只减少了一个值,而每次分块的时间为O(N),所以总时间为O(N^2)。
发表于 2015-07-30 20:17:02 回复(1)
答案A。
待排数据有序时,快速排序就属于最坏情况。
图片来源:http://blog.csdn.net/jiuyueguang/article/details/12028393
发表于 2017-03-11 22:48:59 回复(0)
这里主要区分a和c,c的话如果有序,那么有两种情况,而a的话不管升序还是降序,都是最差的情况。
发表于 2018-07-09 15:37:23 回复(0)
在待排序列已经有序的情况下,快速排序时间时间复杂度最高
发表于 2015-08-11 09:15:39 回复(0)
最坏的情况ABC的复杂度是O(N2),D是O(Nlog2 n),没有答案呀,
发表于 2015-04-09 14:25:35 回复(2)
快速排序 正序或逆序 最坏 O(N^2) 
发表于 2015-03-27 21:13:09 回复(0)
xxj头像 xxj
A
发表于 2014-11-14 15:15:50 回复(0)

扫一扫,把题目装进口袋

牛客网,程序员必备求职神器

扫描二维码,进入QQ群

扫描二维码,关注牛客网公众号

  • 公司地址:北京市朝阳区大屯路东金泉时代3-2708北京牛客科技有限公司
  • 联系方式:010-60728802(电话) admin@nowcoder.com
  • 牛客科技©2018 All rights reserved
  • 京ICP备14055008号-4
  • 京公网安备 11010502036488号