# 插入排序
- 时间复杂度
O(n²) - 空间复杂度
O(1) - 稳定
思想
类似打扑克,一边抓牌一边插入到排好的牌里面
function insertSort(arr) {
for (let i = 1; i < arr.length; ++i) {
let cur = arr[i]; // 要插入的牌
let j = i - 1;
// 如果要插入的比当前小,就把当前的往后移
while (j >= 0 && cur < arr[j]) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = cur;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14