java 排序算法实现 其三:直接选择排序

来源:互联网 发布:js防水涂料 速溶干粉 编辑:程序博客网 时间:2024/05/11 20:36


直接选择排序是最容易理解的排序方式,但也是时间复杂度比较高的排序方式。


其基本思想是:第i轮循环,从未排序的数字中选择最小的,然后将它与i位置上的数交换


第0次: 3  6  5  7  4  1  2 

第1次: 1  6  5  7  4  3  2  

第2次: 1  2  5  7  4  3  6  

第3次: 1  2  3  7  4  5  6  

第4次: 1  2  3  4  7  5  6  

第5次: 1  2  3  4  5  7  6  

第6次: 1  2  3  4  5  6  7  



具体的代码如下:

/** * 直接选择排序 * @param args */private static void selectSort(int[] arr){for(int i=0; i<arr.length-1; i++){int flag = i;for(int j=i+1; j<arr.length; j++){if(arr[j] < arr[flag]){flag = j;}}int temp = arr[i];arr[i] = arr[flag];arr[flag] = temp;}}




0 0