冒泡排序(Bubble Sort)
原理:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。
逻辑代码
public class BubbleSort {
public static void main(String[] args) {
int[] arrs = {3, 44, 38, 5, 47, 15, 36, 26, 27, 2, 46, 4, 19, 50, 48};
int len = arrs.length;
for (int i = 1; i < len; i++) {
for (int j = 0; j < len - i; j++) {
if (arrs[j] > arrs[j + 1]) {
Utils.swap(arrs, j, j + 1);
}
}
Utils.printArr(arrs);
}
}
}
1.演示图:
演示图片为转载,转载地址:https://www.runoob.com/w3cnote_genre/algorithm
总结
时间复杂度(平均) | 时间复杂度(最好) | 时间复杂度(最坏) | 空间复杂度 | 稳定性 |
---|---|---|---|---|
O(n²) | O(n²) | O(n) | O(1) | 稳定 |