美文网首页
JavaScript算法入门--排序--插入排序

JavaScript算法入门--排序--插入排序

作者: 雨落失忆之城 | 来源:发表于2021-10-27 11:27 被阅读0次

一般排序的常用方法有:冒泡法、插入法、选择法、快速排序、归并排序、桶排序、希尔排序、堆排序、基数排序、外部排序等。

介绍插入法排序

插入法排序也是一种稳定的排序算法

(1)如果已知数组a[],设计一个和a相同的b[];
(2)将a的第一个元素放到b开始位置;
(3)取a第2个数组到b第2个位置,与其前面的数比较,如果前面的数比它大,就交换。
(4)取a第3个数到b第3个数位置,如果上一个数比之大,则交换,再和再前一个数比较,逐一交换,直到第3个之前所有数排号序。
(5)……。之后,逐一将a中数放到b中去,并如前排好序,保证b中总是排好序的数。

其实就是平常打斗地主的时候拿牌理牌一样的策略

image.png

JS实现:

// 插入排序
var insert = function (arr){
    let t = 0;
    for(let i = 0;i<arr.length;i++){
        for(let j = i;j>0;j--){
            if(arr[j]<arr[j-1]){
                t = arr[j];
                arr[j] = arr[j-1];
                arr[j-1] = t;
            }
        }
    }
    return arr;
}

java实现:

// 插入排序
    public static void insert(int[] arr){
        int t = 0;
        for(int i = 0;i<arr.length;i++){
            for(int j = i;j>0;j--){
                 if(arr[j]<arr[j-1]){
                        t = arr[j];
                        arr[j] = arr[j-1];
                        arr[j-1] = t;
                  }
            }
        }
    }

相关文章

  • 算法入门——插入排序、快速排序

    上篇文章学习了算法入门——冒泡排序、选择排序,这篇文章我们学习算法入门——插入排序。 插入排序 插入排序是在一组列...

  • 算法-插入排序

    算 法:插入排序算法时间复杂度: 插入排序算法描述 插入排序伪代码 插入排序实现 插入排序算法概述 插入排...

  • JavaScript算法入门--排序--插入排序

    一般排序的常用方法有:冒泡法、插入法、选择法、快速排序、归并排序、桶排序、希尔排序、堆排序、基数排序、外部排序等。...

  • JS实现排序算法

    原文:常见排序算法之JavaScript实现 - 知乎 目录 冒泡排序 选择排序 插入排序 合并排序 快速排序 1...

  • 算法入门——堆排序

    上篇文章我们学习了算法入门——插入排序、快速排序,这篇文章我们学习算法入门——堆排序。 堆 堆是一种特殊的完全二叉...

  • c算法O(n)^2(一)

    选择排序 插入排序 优化插入排序算法

  • python 冒泡排序和选择排序算法

    插入排序算法 冒泡排序算法

  • Chapter 2 Foundation of Algorith

    Chapter 2 插入排序 线性查找 选择算法 归并排序算法 二分查找算法 冒泡排序 插入排序 循环不...

  • Js 实现基础排序算法

    本文使用 JavaScript 实现的基础的 8 种排序算法,复杂度归纳如下:O(n^2) ——冒泡排序、插入排序...

  • 排序

    本文记录几个基础的排序算法。排序算法分为插入排序、交换排序、选择排序等几大类。 插入排序 1. 直接插入排序 O(...

网友评论

      本文标题:JavaScript算法入门--排序--插入排序

      本文链接:https://www.haomeiwen.com/subject/ceaualtx.html