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

选择排序的基本思想:对于给定的一组元素,经过第一轮比较后得到最小的元素,然后将该元素与第一个元素的位置进行交换,接着对不包括第一个元素以外的其他记录进行第二轮比较,得到最小的元素并与第二个位置交换,重复该过程,直到进行比较的元素只有一个为止。

数组{38,65,97,76,13,27,49}

第一趟排序:13 [ 65 97 76 38 27 49 ]

第二趟排序:13 27 [97 76 38 65 49 ]

第三趟排序:13 27 38 [ 76 97 65 49 ]

第四趟排序:13 27 38 49 [ 97 65 76 ]

第五趟排序:13 27 38 49 65 [ 97 76 ]

第六趟排序:13 27 38 49 65 76 [ 97]

第七趟排序:13 27 38 49 65 76 97

class SelectionSort {
public:
    int* selectionSort(int* A, int n) {
        // write code here
         
        for(int i=0;i<n;i++)
        {
            int index = i;//记录最小值存在的位置
for(int j=i+1;j<n;j++) { if(A[index]>A[j]) { index = j; } } swap(A[i],A[index]);//将最小值和对应位置的值进行交换
}
return A; } };

 

}

posted on 2017-03-21 21:28  煎蛋啊  阅读(203)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3