选择排序(简单选择排序--改进的简单选择排序--堆排序)

本文详细介绍了选择排序的三种形式:简单选择排序、改进的简单选择排序以及堆排序。简单选择排序的基本思想是每趟选择最小(或最大)的元素,而改进版通过避免直接交换来实现稳定性。堆排序则通过建立和调整最大堆来实现排序,其时间复杂度为O(nlogn),但不具备稳定性。
摘要由CSDN通过智能技术生成

选择排序:每一趟从待排序序列中选一个按序所需要的记录,放在已排好序的子序列之前或之后,保持有序,这样,有序子序列每次增加一个记录,直到全部记录排完为止。

1、简单选择排序

基本思想:每一趟从待排记录序列中选具有最小关键字值的记录,顺序放在已排好序的子序列后,直到全部记录排完。
步骤:
(1)在第i(i=1,2,3,......,n-1)次挑选步骤中,在记录r[i],r[i+1],r[n]中挑出最小值r
(2)交换r和r[i]。执行完第i步后,前i个记录r[1],r[2],......,r[i]有序。
示例:
初始序列:{ 49 27 65 97 76 12 38}
  第1趟:12与49交换:12{ 27 65 97 76 49 38}
  第2趟:27不动 :12 27{ 65 97 76 49 38}
  第3趟:65与38交换:12 27 38{ 97 76 49 65}
  第4趟:97与49交换:12 27 38 49{
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值