哪个网站做老款二手车网站建设维护
选择排序
在未排序的数组中,用第一个数去和后面的数比较,找出最小的数,和第一个数交换。第一个数已为已排序的数。
相当于0~7
从0~7中找到最小的数放在0
从1~7中找到最小的数放在1
从2~7中找到最小的数放在2
...以此类推
从6~7中找到最小的数放在6
共7次
Java代码如下:
public class SelectSort {public static void main(String[] args) {int[] arr = {5, 3, 8, 6, 2, 7, 1, 4};selectSort(arr);}private static void selectSort(int[] arr){for(int i=0;i<arr.length-1;i++){
// 最小值下标 假设每一轮的第1一个元素是最小值int xb=i;for (int j=i+1;j<arr.length;j++){
// 找到最小元素下标if(arr[j]<arr[xb]){xb=j;}}
// 说明有更小的交换 否则arr[i]就是最小值固定if(xb!=i){int temp=arr[xb];arr[xb]=arr[i];arr[i]=temp;}printArr(arr);}}private static void printArr(int[] arr){for(int i=0;i<arr.length;i++){System.out.print(arr[i]+" ");}System.out.println();}
}