冒泡法排序的思路:从第一位开始和后面的数字比较,前面大则和后面交换位置。这时候最大的在最后一位(下次寻找的时候不用排最后一个),然后在寻找第二大 放在倒数第二个(下次寻找的时候不用排最后二个)。
灰色则为排序成功不用在排序。`
public static void main(String[] args) {
int a[] = new int[5];
int temp;
for (int n = 0; n < a.length; n++) {
a[n] = (int) (Math.random() * 100); //随机100以内的数存进数组
System.out.print(a[n] + " ");
}
for (int i = 0; i < a.length ; i++) {//i为要排序的数的次数
for (int j = 0; j < a.length - i -1; j++) { //j<a.length-i-1 因为要减去已经排完的i在接着排序 -1 最后最小的在前面不需要再比较
if (a[j] > a[j + 1]) {
temp = a[j]; //定义一个temp来存放a[j] 交换位置
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
System.out.print("排序后:");
for (int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
}
}