学习java,挺好玩的呢

 将数组第一个数字,依次和数组后面的数字比较,将小的数字放到最前面。。

 

 1 public class SelectSort {
 2     public static void main(String[] args) {
 3         int[] arr=new int[]{3,8,2,9,4,1,6,8,10};
 4         System.out.println(Arrays.toString(arr));
 5         selectSort(arr);
 6         System.out.println(Arrays.toString(arr));
 7     }
 8     
 9     public static void selectSort(int[] arr){
10         //Z遍历所有的数
11         for(int i=0;i<arr.length-1;i++){
12             int minIndex=i;
13             //把当前遍历的数和后面所有的数依次进行比较,并记录下最小的数的下标。
14             for(int j=i+1;j<arr.length;j++){
15                 //如果后面比较的数比记录的最小的数小
16                 if(arr[minIndex]>arr[j]){
17                     //记录下最小 的那个数的下标
18                     minIndex=j;
19                 }
20             }
21             //如果最小的数和当前遍历数的下标不一致,说明下标为minIndex的数比当前遍历的数更小
22             if(i!=minIndex){
23                 int temp=arr[i];
24                 arr[i]=arr[minIndex];
25                 arr[minIndex]=temp;
26             }
27             
28         }
29     
30     }
31     
32 }
33              

 

posted on 2018-11-18 17:49  axu521  阅读(149)  评论(0编辑  收藏  举报

<