• JavaScript算法-插入排序

    JavaScript算法-插入排序

    • 插入排序
    • 插入排序有两个循环,外循环将数组元素挨个移动,而内循环则对外循环中选中的元素及它后面的那个元素进行比较。如果外循环中选中的元素比内循环中选中的元素小,那么数组会向右移动,为内循环中的这个元素腾出位置。

    插入排序 - 图1

    1. function insertionSort() {
    2. var temp,inner;
    3. for (var outer = 1; outer <= this.dataStore.length - 1 ; ++outer) {
    4. temp = this.dataStore[outer];
    5. inner = outer;
    6. while (inner>0 &&(this.dataStore[inner-1] >= temp)) {
    7. this.dataStore[inner] = this.dataStore[inner - 1];
    8. --inner;
    9. }
    10. this.dataStore[inner] = temp;
    11. }
    12. }