简单的选择排序

3,292 阅读1分钟

思想

简单选择排序是最简单直观的一种算法,基本思想为每一趟从待排序的数据元素中选择最小(或最大)的一个元素作为首元素,直到所有元素排完为止,简单选择排序是不稳定排序。

图解

image.png

时间复杂度

O(N²)

代码

 `
 public void  selectionSort(int[] arr){
    if (arr ==null || arr.length<2){
        return;
    }
    for (int i=0;i<arr.length;i++){
        int minIndex = i;
        for (int j=i+1;j<arr.length;j++){
            minIndex =arr[j]<arr[minIndex]?j:minIndex;
        }
        swap(arr,i,minIndex);
    }

  }

public void swap(int[] arr,int i,int j){
    int temp =  arr[i];
    arr[i] = arr[j];
    arr[j] = temp;
}
`