插入排序

1. 算法步骤

  1. 将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。

  2. 从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当位置。(如果待插入的元素与有序序列中的某个元素相等,则将待插入元素插入到相等元素的后面。)

  插入排序

function insertSort(arr) {
        var len = arr.length;
        var preIndex,curIndex;
        for(var i=1;i<len;i++){
            preIndex = i -1;
            curIndex = arr[i];
            while(preIndex >= 0 && arr[preIndex] >curIndex) {
                arr[preIndex+1] =arr[preIndex]
                preIndex--;
            }
            arr[preIndex+1] =curIndex
        }
        return arr;
    }
    var arr = [1,5,2,48,6,23,14]
    console.log(selectSort(arr))  // [1, 2, 5, 6, 14, 23, 48]
原文地址:https://www.cnblogs.com/vhen/p/7688285.html