设有N个数需要从小到大排序,则共需要N-1趟,才能完成整个排序:
Step-1: 将第一个数与后面所有的数进行比较;如果后面的某数<第一个数,就交换;比较结束后,第一个数就是最小的数;
Step-2: 将第二个数与后面所有的数进行比较;如果后面的某数<第二个数,就交换;比较结束后,第二个数就是次小的数;
...
Step-N-1 :
//核心代码
public class Test { public static void main(String[] args){ int aa[] = {0,7,5,6,8,3}; for(int i=0;i<aa.length;i++){ for(int j=i+1;j<aa.length;j++){ if(aa[i]>aa[j]){ int temp = aa[i]; aa[i] = aa[j]; aa[j] = temp; } } } } }
实例:选择排序(从小到) 3 7 5 6 8 0
- 0 7 5 6 8 3
- 0 5 7 6 8 3 --》0 3 7 6 8 5
- 0 3 6 7 8 5 --》0 3 5 7 8 6
- 0 3 5 6 8 7
- 0 3 5 6 7 8
排序结束