java经典算法之选择排序

Posted zhangningning

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java经典算法之选择排序相关的知识,希望对你有一定的参考价值。

 1 /**
 2   *选择排序(当前值与数组每个值进行比较)
 3   */
 4 public class Select  
 5 {
 6     public static void main(String[] args) 
 7     {
 8         simpleSelect();
 9     }
10     public static void simpleSelect(){
11 
12         int[] arr = new int[]{80,15,31,20,59};
13         int minIndex;    //记录最小值的下标
14 
15         for(int i=0;i<arr.length;i++){
16             minIndex = i;    //从数组第一个数开始比较
17             for(int j=i+1;j<arr.length-1;j++){
18                 if(arr[j]<arr[minIndex]){    //此时j=i+1;minIndex=i
19                     minIndex = j;            //如果后一个比前一个小,记录下标,将下标j赋minIndex
20                 }                            //最终得到最小值的下标
21             }
22             //内层一次循环结束得到当前最小值
23             int temp = arr[i];    //创建临时变量,交换值
24             arr[i] = arr[minIndex];
25             arr[minIndex] = temp;
26         }
27 
28         //得到排序后的数组,遍历输出
29         for(int p=0;p<arr.length;p++){
30             System.out.println(arr[p]);
31         }
32      }
33 }

 

以上是关于java经典算法之选择排序的主要内容,如果未能解决你的问题,请参考以下文章

经典(java版)排序算法的分析及实现之三简单选择排序

经典算法之选择排序

一文学懂经典算法系列之:直接选择排序

经典排序算法和Python详解之选择排序和二元选择排序

一文学懂经典算法系列之:直接选择排序

十大经典排序算法之选择排序