每日一练20210907

=====================================================================

一组记录的排序码为

(46,79,56,38,40,84)

一趟排序后的结果为

(40,38,46,56,79,84)

则采用的是()排序方法.

2021-09-08 01:16:25

  • A、 冒泡排序
  • B、 直接插入排序
  • C、 快速排序
  • D、 2路归并排序

 回答正确 正确答案: C

解析:

解析: C A选项:相邻元素两两比较,一个元素大于右侧相邻元素交换位置,否则位置不变。 一趟排序为:46,56,38,40,79,84

B选项:每一步将一个待排序的记录,插入到前面已经排好序的有序序列中去,直到插完所有元素为止。 一趟排序为:38,40,46,79,56,84

C选项快速:挑选一个基准元素,大于基准元素的放在其右边,小于基准元素的放在其左边,从而拆分为两部分,以此类推直到不可拆分为止。 以源数据第一个元素46为基准,采用双边循环法设置left和right两个指针指向数组最左和最右两端,从右指针开始,如果大于或等于基准元素则指针向左移动,如果小于基准元素则停止。转向left指针向右移动如果小于或等于基准元素则继续向右移动,如果大于基准元素则停止。交换两指针元素后,右指针继续上述操作比较,直到最后把基准元素和两指针重复元素交换位置。第一趟排序结束得出如下排序,所以C正确。 一趟排序为:40,38,46,56,79,84

D选项:将一个数组分成两个数组,分别对两个数组进行排序,循环第一步,直到划分出来的“小数组”只包含一个元素,只有一个元素的数组默认为已经排好序 一趟排序为:46,56,79合并;38,40,84合并

20210907,一天又快过去了,继续加油鸭~
 
 
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值