直接插入排序(Insertion Sort)
一. 算法思想
每一步将一个待排序的记录,插入到前面已经排好序的有序序列中去,直到插完所有元素为止。
二. 稳定性和时间复杂度
- 稳定
- o(n^2)
三. 代码实现
var a = [43, 65, 4, 23, 6, 98, 2, 65, 7, 79];
for(var i = 1;i<a.length;i++){
var t = a[i];
j = i-1;
while(j>=0 && t<a[j]){
a[j+1] = a[j];
j--;
}
a[j+1] = t;
}
console.log(a); // [ 2, 4, 6, 7, 23, 43, 65, 65, 79, 98 ]