let arr = [5, 9, 1, 3, 11]
function insertSort(arr) {
let len = arr.length;
for (let i = 1; i < len; i++) {
// 缓存当前数
let curVal = arr[i]
// 从当前数的上一个数开始比较
let j = i - 1;
while (j >= 0 && curVal < arr[j]) {
// 符合条件的数,往后移一位
arr[j + 1] = arr[j]
j--
}
// 将缓存的数放在最后一个不符合条件的数后面
arr[j + 1] = curVal
}
return arr
}
console.log(insertSort(arr));
附图