美文网首页
【JAVA】排序算法学习-直接插入排序

【JAVA】排序算法学习-直接插入排序

作者: 莫永敏 | 来源:发表于2017-09-28 12:52 被阅读20次

直接插入排序分为两部分:有序区、无序区
排序方法:从无序区中取一个数,再到有序区中进行排列

直接插入排序

例子:5 8 4 7 1
第1趟: [5] 8 4 7 1
第2趟: [5 8] 4 7 1
第3趟: [4 5 8] 7 1
第4趟: [4 5 7 8] 1
第5趟: [1 4 5 7 8]

public class InsertSort {

    public static void main(String[] args) {
        int[] a = {7, 11, 8, 9, 5, 4, 100, 76};
        for (int i = 0; i < a.length; i++) {
            // j<i为有序区
            for (int j = 0; j < i; j++) {
                // 在有序区逐一判断大小,交换位置
                if (a[i] < a[j]) {
                    int temp = a[i];
                    a[i] = a[j];
                    a[j] = temp;
                }
            }
        }
        System.out.println("排序后:");
        for (int o : a) {
            System.out.print(o+" ");
        }
    }

}

直接插入排序时间复杂度:O(N*N)

相关文章

  • 数据结构&算法(一)

    一、Java实现快速排序算法 二、Java实现折半插入排序算法 三、Java实现冒泡排序算法

  • java 实现排序算法之「插入排序」

    java 实现排序算法系列 这是 Java 实现排序算法的第三篇文章——插入排序算法。插入排序可以说成是「一类」简...

  • 排序算法(一)直接插入排序算法

    排序算法(一)直接插入排序算法 1.基本概念  直接插入排序(Straight-Insertion-Sort)是一...

  • 排序

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

  • 2020-04-30-排序算法

    冒泡排序 直接选择排序 插入排序 快速排序 参考 算法学习笔记17-经典排序算法八大排序算法稳定性分析

  • 排序——插入排序

    业精于勤荒于嬉 插入排序包括:直接插入排序、折半插入排序、希尔排序(缩小增量排序) 一、直接插入排序 1. 算法思...

  • 插入排序算法实现

    排序算法是最常见,最基础的算法,作者文集中记录了两种排序算法(插入排序,归并排序) 插入排序算法实现很简单直接,附...

  • 数据结构与算法---排序篇

    前言: 2016年5月21号开始学习排序算法及其主要思想,并通过代码实现 插入排序 插入排序有两种: 直接插入排序...

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

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

  • 熟记代码片段

    1.转自 一遍记住Java常用的八种排序算法与代码实现 直接插入排序:

网友评论

      本文标题:【JAVA】排序算法学习-直接插入排序

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