插入排序 InsertionSort

插入排序的原理是默认前面的元素都是已经排序好的,然后从后面逐个读取插入到前面排序好的合适的位置,就相当于打扑克的时候每获取一张牌的时候就插入到合适的位置一样。

以{26,53,48,11,13,48,32,15)为例,插入排序的过程如下所示:

动态演示 :

代码 :

java 复制代码
    public static void main(String[] args) {
        int[] arr = {10, 78, 65, 32, 21, 89, 13, 54, 7, 3};
        insertSort(arr);
    }

    public static void insertSort(int[] arr) {
        for (int i = 1; i < arr.length; i++) {
            int j = i;
            int temp = arr[i];
            for (; j > 0; j--){
                if (arr[j - 1] > temp){
                    arr[j] = arr[j - 1];
                }else {
                    break;
                }
            }
            arr[j] = temp;
        }
        //打印
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
相关推荐
从此以后自律1 分钟前
迪杰斯特拉
算法
EntyIU3 分钟前
Java NIO 实战
java·开发语言·nio
二宝哥5 分钟前
springboot项目使用Gradle工具实现依赖版本控制
java·spring boot·后端·gradle·版本
QiLinkOS8 分钟前
第三视觉理解徐玉生与他的商业活动(32)
大数据·c++·人工智能·算法·开源协议
KaMeidebaby19 分钟前
卡梅德生物技术快报|实操手册:CXCL4 蛋白原核表达全套工艺,两步层析去除蛋白多聚体附完整电泳数据
人工智能·算法·机器学习·架构·spark
济*沧*海25 分钟前
Set集合深度解析:原理、特性与应用场景全攻略
java
geovindu26 分钟前
java: Singleton Pattern
java·开发语言·后端·单例模式·设计模式·创建型模式
AIGCmagic社区26 分钟前
Unlimited OCR 论文精读:R-SWA 如何实现一次性长文档解析
人工智能·算法·aigc
鹏易灵1 小时前
C++——7.类与对象,掌握封装、继承、多态.详解
开发语言·c++·算法
一路向北North1 小时前
Spring Security OAuth2.0(16):密码模式
java·后端·spring