目录

插入排序(ts实现)

# 算法步骤

首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。

再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。

重复第二步,直到所有元素均排序完毕。

img

# Code:

/**
 @Project :插入排序
 @IDE : WebStorm
 @Author : xinyu
 @Date :2022/3/2 下午5:33
 @Description :插入排序
 **/
import baseFunction = require("../utils/baseUtils");
let baseFunctions = new baseFunction()
let insertionSort=(array,compareFn = baseFunctions.defaultCompare)=>{
    const {length} = array
    let temp
    for (let i = 0; i <length ; i++) {
        let j=i;
        temp =array[i];
        while (j>0&&compareFn.call(baseFunctions,array[j-1],temp)===baseFunctions.Compare.BIGGER_THAN){
            array[j]=array[j-1];
            j--
        }
        array[j]=temp;
    }
    return array;
}
console.log(insertionSort(baseFunctions.testArray));
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
上次更新: 2023/09/05 17:45:42
最近更新
01
关于我
07-14
02
科学上网
11-15
03
OSS+CDN
09-23
更多文章>
极昼青春
买辣椒也用券