冒泡排序
冒泡排序就是把小的元素往前调,或者把大的元素往后调
算法模式:双指针-快慢指针
时间复杂度:O(n²)
思路:向后比较
- 防御性:长度小于 1 直接返回
- 上一位:外层 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))