携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第3天,点击查看活动详情
冒泡排序
冒泡排序一次遍历两个元素,如果顺序错误就对调两个元素,重复进行操作直至完全正确,算法名称来源是元素会慢慢交换“浮”到顶端。
1.1 算法描述
- 遍历元素
- 将当前遍历元素与剩余元素对比
- 如果大于剩余元素则交换位置
1.2 代码实现
public void bubbleSort(int[] nums) {
// 遍历元素
for (int i = 0; i < nums.length; i++) {
// 将元素和剩余元素两两对比
for (int j = i; j < nums.length; j++) {
// 如果前者比后者大, 则互换位置
if (nums[i] > nums[j]) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
}
}
1.3 总结
冒泡排序时间复杂度O(n^2),空间复杂度O(1)