选择排序

原理

  • 每一轮都从数组中找到最小的数
  • 将它与待排序的数组第一位互换位置
  • 从剩下的数组中找到最小的数
  • 重复上述操作

    代码实现

    ```java import java.util.Arrays;

/**

  • @author laoduan
  • @create 2020-04-28-16:53 */ public class SelectSort { public static void main(String[] args) {
  1. int [] arr ={101,34,119,1};
  2. System.out.println("排序前");
  3. System.out.println(Arrays.toString(arr));
  4. selectSort(arr);
  5. System.out.println("排序后");
  6. System.out.println(Arrays.toString(arr));
  7. }
  8. public static void selectSort(int[] arr){
  9. for (int i=0;i<arr.length-1;i++) {
  10. int minIndex = i;
  11. int min =arr[i];
  12. for(int j=i+1;j<arr.length;j++){
  13. if(min>arr[j]){
  14. min=arr[j];
  15. minIndex=j;
  16. }
  17. }
  18. if(minIndex!=i){
  19. arr[minIndex]=arr[i];
  20. arr[i]=min;
  21. }
  22. System.out.println("min="+min);
  23. System.out.println("minindex="+minIndex);
  24. System.out.println("此时数组为==="+Arrays.toString(arr));
  25. }
  26. }

}

```