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

简单选择排序

简单选择排序,就是在每一次循环中选出最小值(相比较而言),然后将这个最小值,与参与比较的所有元素中,索引值最小的位置相互调换
 1 package com.berry.algorithm.sort;
 2 
 3 /**
 4  * Created by berry-h on 17-1-16.
 5  */
 6 public class SimpleSelectionSort implements Sort{
 7 
 8     /**
 9      *
10      * @param array
11      * 简单选择排序,就是在每一次循环中选出最小值(相比较而言),然后将这个最小值,
12      * 与参与比较的所有元素中,索引值最小的位置相互调换
13      */
14     @Override
15     public void sort(int[] array) {
16 
17         //外循环
18         for(int i = 0;i < array.length;i++){
19             //设参与比较的第一个元素对应的值为最小值元素
20             int min = i;
21             //内循环
22             for(int j = i + 1;j < array.length;j++){
23                 //当第j个元素值小于设定的最小值时
24                 if(array[min] > array[j]){
25                     //更新最小值对应的索引
26                     min = j;
27                 }
28             }
29 
30             //当筛选出来的索引值不是与开始循环时设定的索引值不相等时
31             if(i != min){
32                 //开始调换
33                 int temp = array[i];
34                 array[i] = array[min];
35                 array[min] = temp;
36             }
37         }
38 
39     }
40 }

 

posted @ 2017-01-17 16:27  kohakuhubo  阅读(124)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3