[color=blue][size=large]基本思想[/size][/color]:
在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。
冒泡排序的示例:
[img]http://dl2.iteye.com/upload/attachment/0113/4948/62b80875-99b3-30a3-803a-0fb7930a318c.jpg[/img]
[size=large][color=blue]代码实现[/color][/size]:
在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。
冒泡排序的示例:
[img]http://dl2.iteye.com/upload/attachment/0113/4948/62b80875-99b3-30a3-803a-0fb7930a318c.jpg[/img]
[size=large][color=blue]代码实现[/color][/size]:
public class BubbleSort {
public static void sort(int[] a) {
int temp = 0;
for (int i = 0; i < a.length - 1; i++) {
for (int j = 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;
}
}
}
}
}