试题:
任意输入一个整形数组,利用冒泡排序法将其排序,要求从小到大排序,冒泡排序必须优化。
答案:
int a[] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
for (int i = a.length - 1; i >= 1; i--) {
boolean flag = true;
for (int j = 0; j < i; j++) {
if (a[j] > a[j + 1]) {
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
flag = false;
}
}
if (flag) {
break;
}
}
System.out.println(Arrays.toString(a));