算法学习笔记 发表于 2017-11-29 | 阅读次数选择排序(O(n*2))在需要排序的数组中找到最小的索引与第一位交换、找到第二小的与第二位交换等以此类推。1234567891011121314151617public static void sort(int[] arr){ int n = arr.length; for( int i = 0 ; i < n ; i ++ ){ // 寻找[i, n)区间里的最小值的索引 int minIndex = i; for( int j = i + 1 ; j < n ; j ++ ){ if( arr[j] < arr[minIndex] ) minIndex = j; } swap( arr , i , minIndex); }}private static void swap(int[] arr, int i, int j) { int t = arr[i]; arr[i] = arr[j]; arr[j] = t;}