插入排序

插入排序

  插入排序的基本工作原理:对于未排序列,在已排序列中从后向前扫描,找到相应的位置并插入。其中时间复杂度O(n^2),空间复杂度O(1),算法相对稳定。

function insertionSort(arr) {
    var length = arr.length;
    for (var i = 0; i < length; i++) {
        var preIndex = i - 1;
        var cur = arr[i];
        while (preIndex>=0&&arr[preIndex]>cur) {
            arr[preIndex + 1] = arr[preIndex];
            preIndex--;
        }
        arr[preIndex+1] = cur;
    }
    return arr;
}
console.log(insertionSort([3,1,7,45,3,2]));

  

posted @ 2021-12-23 17:03  秋墨江雪  阅读(21)  评论(0编辑  收藏  举报