首页 > 试题广场 >

若一组记录的排序码为(46, 79, 56, 38, 40,

[单选题]
若一组记录的排序码为(46, 79, 56, 38, 40, 84),则利用快速排序,以第一个记录为基准得到的一次划分结果是 ()
  • 38, 40, 46, 56, 79, 84
  • 40,38, 46 ,79, 56, 84
  • 40, 38,46, 56, 79, 84
  • 40, 38,46,84, 56, 79
推荐
编辑于 2018-05-06 22:50:06 回复(0)

双路快速排序结果为A
普通快排结果为B
C是怎么得到的?

发表于 2017-05-17 11:23:56 回复(0)
快排从前从后双路情况都不一样,谁知道你要的是哪种
发表于 2019-04-14 23:56:09 回复(0)
快排图解
http://www.cnblogs.com/MOBIN/p/4681369.html
一边成了就交换数据然后另一边指针移位,不成就这边指针继续移位
发表于 2018-07-28 17:32:44 回复(0)
关键理解quick sort(python)
核心部分为:
mid=l[low]
while low<high:
    while low<high and l[high]>mid:
        high-=1
    l[low]=l[high]
    while low<high and l[low]<mid:
        low+=1
    l[high]=l[low]
l[low]=mid

编辑于 2018-07-08 10:00:35 回复(0)

挖坑法选C

双路快排选A

发表于 2018-09-06 19:23:28 回复(0)
感觉快排是从基准数的后面开始取的吧,我选的B。
发表于 2018-08-30 15:20:16 回复(0)
C
从后检查,如果交换,再从头检查。
发表于 2018-08-22 16:52:26 回复(0)
快排的实现有很多种 非要用最难理解那种名称为“简单快排”的结果做答案 很不严谨了用双路快排 秒选A
发表于 2018-08-21 18:15:58 回复(0)
普通快排不应该是 第一次 46 38 56 79 40 84   第二次 46 38 40 79 56 84 最后 40 38 46 79 56 84,也就是B吗
发表于 2018-06-14 09:21:26 回复(0)
我选A
发表于 2018-04-27 21:10:01 回复(0)
快排一定要从最后开始吗?呵呵,老师讲的是从头开始的啊!
发表于 2018-04-03 20:32:55 回复(0)
简单快排
发表于 2017-05-20 15:55:37 回复(0)