Skip to main content

冒泡排序

冒泡排序就是把小的元素往前调,或者把大的元素往后调

算法模式:双指针-快慢指针

时间复杂度:O(n²)

思路:向后比较

  1. 防御性:长度小于 1 直接返回
  2. 上一位:外层 for 从 0 递增
    • 下一位:内层 for 从 0 递增
    • 比较 arr[j+1] < arr[j]
    • temp 交换排序
const bubbleSort = (arr) => {
if(arr.length <=1) return arr;

for(let i=0;i<arr.length;i++){ // 外层 for 循环控制循环次数
for(let j=0;j<arr.length;j++){
// 比大小
if(arr[j + 1] < arr[j]) {
// 交换位置
var temp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = temp;
}
}
}
return arr
}

const arr = [5,4,3,2,1]
console.log(bubbleSort(arr))