1. 冒泡排序
packagecom.bjsxt;
public class TestBubbleSort {
public static void sort(int[] a) {
inttemp = 0;
// 外层循环,它决定一共走几趟
for(inti = 0; i <a.length-1; ++i) {
//内层循环,它决定每趟走一次
for(intj = 0; j <a.length-i-1 ; ++j) {
//如果后一个大于前一个
if(a[j + 1] < a[j]) {
//换位
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
public static void sort2 ( int[] a) {
inttemp= 0;
for ( inti= 0; i<a.length-1; ++i) {
//通过符号位可以减少无谓的比较,如果已经有序了,就退出循环
intflag= 0;
for ( intj= 0; j<a.length-1-i; ++j) {
if(a[j+ 1] < a[j]) {
temp= a[j];
a[j] = a[j+ 1];
a[j+ 1] = temp;
flag= 1;
}
}
if(flag== 0){
break;
}
}
}
}