Skip to content

Latest commit

 

History

History
52 lines (38 loc) · 1.01 KB

选择排序算法.md

File metadata and controls

52 lines (38 loc) · 1.01 KB

前言

思路:依次寻找[i, n)区间里的最小值的索引。

动态图

选择排序动态图

  • 时间复杂度:O(n^2)
  • 空间复杂度:O(1)
  • 稳定性:不稳定

正文

1. 代码实现

public class SelectionSort {
    
    public static void sort(int[] arr) {
        
        int n = arr.length;

        for (int i = 0; i < n; i++) {
            int min = i;
            for (int j = i+1; j < n; i++) {
                if (arr[j] < arr[min]) {
                    min = j;
                }
            }
            swap(arr, i, min);
        }
    }

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

参考