选择排序原理:从数组的第一个元素和每一个元素比较大小不等就交换位置把最小的元素放到第一的位置上去,第二个元素开始和后一个元素比较大小不等就交换一直比较的数组尾元素。
int [] temp = new int [] {2, 9, 78, 5, 1};
for(int i = 0; i < temp.length - 1; i++){
for(int j = i + 1; j < temp.length; j++){
if(temp[i] > temp[j]){
temp[i] = temp[i] ^ temp[j];
temp[j] = temp[i] ^ temp[j];
temp[i] = temp[i] ^ temp[j];
}
}
System.out.println("第" + i + "次排序: " + Arrays.toString(temp));
}
打印分析:
第0次排序: [1, 45, 78, 5, 2, 9]
第1次排序: [1, 2, 78, 45, 5, 9]
第2次排序: [1, 2, 5, 78, 45, 9]
第3次排序: [1, 2, 5, 9, 78, 45]
第4次排序: [1, 2, 5, 9, 45, 78]