插入排序每次拍一个数组项,以此方式构建最后的排序数组。假定第一项已经排序了,接着和第二项进行比较,第二项应该待在原位还是插到第一项之前呢?这样头两项已经正确排序,接着和第三项比较,以此类推。
this.insertionSort = function(){
const length = array.length
for(let i=1;i<length;i++) {
let temp = array[i]
let j = i
while(j>0 && array[j-1]>temp) {
array[j] = array[j-1]
j--
}
array[j] = temp
}
}
排序小型数组时,该算法比选择排序和冒泡排序性能号
网友评论