冒泡排序
原理:相邻的两个数进行比较,如果满足条件进行交换
排序: 4, 6, 5, 9, 2, 8 由小至大
第一轮:从第一个开始,每相邻的两个数进行比较,符合调整的数往上冒,直至比较到最后一位,如图
第二轮:从第一个开始,每相邻的两个数进行比较,符合调整的数往上冒,直至比较到n-1位,因为最后一位已经是最值无需再进行比较,如图
第三轮:还是从第一个开始,每相邻的两个数进行比较,符合调整的数往上冒,直至比较到n-2位,因为最后两位已经按条件拍好,如图
第四轮:还是从第一个开始,每相邻的两个数进行比较,符合调整的数往上冒,直至比较到n-3位,因为最后三位已经按条件拍好,如图
第五轮:还是从第一个开始,每相邻的两个数进行比较,符合调整的数往上冒,直至比较到n-4位,因为最后四位已经按条件拍好,如图
代码
int[] arr = {4, 6, 5, 9, 2, 8};
/**
* 冒泡排序
*/
for (int i = 0; i < arr.length-1; i++) {
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}