内部排序算法——选择排序

选择排序法可使用两种方式排序:从小到大或从大到小;例如:当N个数据需要由大至小排序时,首先将第一个位置的数据依次和第2、3、4……、N个位置的数据进行比较。如果数据大于或等于其中一个位置,则不变;若小于其中一个位置的数据,则两个位置的数据互换。互换后第1个位置的数据继续与后续位置的数据进行比较,直到位置最末端,此时第一个位置的数据即为此排序数组的最大值。接下来选择第二个位置的数据,依次与第3、4…
摘要由CSDN通过智能技术生成

选择排序法可使用两种方式排序:从小到大或从大到小;例如:当N个数据需要由大至小排序时,首先将第一个位置的数据依次和第2、3、4……、N个位置的数据进行比较。如果数据大于或等于其中一个位置,则不变;若小于其中一个位置的数据,则两个位置的数据互换。互换后第1个位置的数据继续与后续位置的数据进行比较,直到位置最末端,此时第一个位置的数据即为此排序数组的最大值。接下来选择第二个位置的数据,依次与第3、4……、N个位置的数据进行比较,将最大值放入第二个位置。此循环方法直到N-1个位置的最大值找到后即可完成选择排序法由大到小的排列。下面仍然利用数组6、4、9、8、3的由小到大排序过程来说明选择排序法的演算方式。

原始数据:6、4、9、8、3

第一次扫描:先找到这个数组中的最小值,与第一个元素进行交换;

第一次扫描过程:第一个位置的数据与第2、3、4、5个位置的数据依次比较,如果第一个位置的数据小于等于其中一个位置的数据,则不变;若大于其中一个位置的数据则交换位置;则6与4比较,6>4,交换位置得4、6、9、8、3;因为第一个位置的数据发生了变化,因此,再次将第一个位置的数据与第3、4、5个位置的数据比较:4比9和8都小,因此不用交换位置,而4比3小,交换位置为:3、6、9、8、4

因此第一次扫描结果:3、6、9、8、4;

第二次扫描:

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值