冒泡排序-Bubble Sort
2023-02-25 本文已影响0人
lxtyp
基本思想:两个数比较大小,较大的数沉下去,较小的数浮起来。
冒泡排序需要进行多次迭代。设数组长度为N。共需进行N-1次迭代。
1,第一次迭代,从第一个数开始,依次比较相邻的前后两个数据,如果前面数据大于或者小于后面的数据,就将二个数据交换。完成第一轮迭代之后,最大或者最小的数就排到了最末尾。
2,第二次迭代,参照第一次,一直进行到N-1。这样,次大或者次小的数排到了倒数第二位。
3,继续执行,直到第N-1次迭代完成,所有的数都完成排序。
排序代码
public void bubbleSort() {
int[] befArrays = {3, 5, 1, 4, 12, 18, 19, 20, 9, 3, 15, 7, 0};
int length = befArrays.length;
for (int i=1; i<length; i++) {
for (int j=0; j<length-i; j++) {
if (befArrays[j]>befArrays[j+1]) {
int swap = befArrays[j];
befArrays[j] = befArrays[j+1];
befArrays[j+1] = swap;
}
}
}
for (int i=0; i<length; i++) {
System.out.printf(befArrays[i] + "\t");
}
}