冒泡排序
- 比较相邻的两个数,把大的值放在后面;
- 一轮下来会找到1个最大值,排在最后面,每执行一轮,就少对比一个值
- 执行len - 1 轮
假如有这样一个数组:
const array = [10, 7, 2, 100, 5, 5, 230, 400, 1, -2];
方法实现:
const bubbleSort = (arr) => {
for(let i = 0, len = arr.length; i < len - 1; i++) {
for(let j = 0; j < len - i - 1; j++) {
if(arr[j] > arr[j + 1]) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]
}
}
}
return arr;
}