若是元素已經在該在的位置上就不須要再交換位置了。 spa
public static void main(String[] args) { int[] arr = {1,3,5,7,9,2,4,6,8,0}; sort(arr); } public static void sort(int[] arr){ for (int i = 0; i < arr.length-1; i++) { int min = i; for (int j = i+1; j <arr.length; j++){ if (arr[min] > arr[j]) min = j; } if (min != i){ change(arr,min,i); } } } public static void change(int[] arr,int x,int y){ int temp = arr[x]; arr[x] = arr[y]; arr[y] = temp; }