Java选择排序

public static void main(String[] args) {
    int[] array = {101, 34, 119, 1, 136, 185};
    selectSort(array);
    System.out.println("排序后:" + Arrays.toString(array));
}

/**
 * 选择排序,时间复杂度 O(n²)
 *
 * @param array
 */
public static void selectSort(int[] array) {
    for (int i = 0; i < array.length - 1; i++) {
        // 假设最小数的下标
        int minIndex = i;
        // 最小数的值
        int min = array[i];
        for (int j = i + 1; j < array.length; j++) {
            // 说明假设的最小值不是最小
            if (min > array[j]) {
                min = array[j];
                minIndex = j;
            }
        }
        if (minIndex != i) {
            array[minIndex] = array[i];
            array[i] = min;
        }
    }
}

运行结果

排序后:[1, 34, 101, 119, 136, 185]
上一篇:排序算法1 - 选择排序


下一篇:Unity C# Texture图像高校传输到C++ dll的方法