# 冒泡排序
# 描述
冒泡排序:就像气泡在水中上浮一样,两个数比较大小,较大的数下沉,较小的数冒起来。
- 比较相邻的两个数据,如果第二个数小,就交换位置。
- 从后向前两两比较,一直到比较最前两个数据。最终最小数被交换到起始的位置,这样第一个最小数的位置就排好了。
- 继续重复上述过程,依次将第2.3...n-1个最小数排好位置。
# 过程
# 实现
function bubSort(nums = []) {
// 简单的边界判断
if (nums.length <= 1) {
return nums;
}
const len = nums.length;
for (let i = 0; i < len - 1; i++) {
// 每一趟交换,最大的值一定会确定在结尾
for (let j = 0; j < len - i - 1; j++) {
if (nums[j] > nums[j + 1]) {
let temp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = temp;
}
}
}
return nums;
}