外循环,每次找到前i个数的最大值,放在i位置上 内循环依次将大的数往后冒泡
static void sort(int[] a) {
if (a == null || a.length == 0) {
return;
}
for (int i = a.length - 1; i >= 0; i--) {
for (int j = 0; j < i; j++) {
if (a[j] > a[j + 1]) {
int x = a[j];
a[j] = a[j + 1];
a[j + 1] = x;
}
}
}
}
算法复杂度 O(n^2)
原文:http://www.cnblogs.com/vic2r/p/5911061.html