• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
123
博客园    首页    新随笔    联系   管理    订阅  订阅
数组选择排序

选择排序的工作原理:在未排序的数列中,找出最大(最小)的一个与未排序最后一个(第一个)进行交换。如下图所示(ps图片来源于网络,如有侵权请联系删除):

 

第一次:找出最大值为9的元素,然后与最后一个交换位置.
第二次:找出最大值为8的元素,然后与未排序的最后一个(整个数列的倒数第二个)进行交换.
第三次:找出最大值为7的元素,然后与未排序的最后一个(整个数列的倒数第三个)进行交换.
....
实现代码

 


代码的实现主要包括三步:
第一步:定义未排序数列的最大值位置,通常选择数列的第一个位置
第二步:将最大值与数列的每一个值进行比较,如果最大值小于数列的某一个值,则最大值位置发生变化,这样的话每一轮都能够找出未排序数列的最大值的位置。
第三步:将最大值与未排序数列的最后一个值进行交换。

 
posted on 2019-12-09 19:46  login123  阅读(144)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3