美文网首页
算法导论-算法基础-插入排序

算法导论-算法基础-插入排序

作者: 老鼠也有理想 | 来源:发表于2017-05-09 16:50 被阅读0次

插入排序

输入:n个数的一个序列<a1,a2,…,an>。
输出:输入序列的一个排列<a1',a2',…,an‘>,满足a1'≤a2'≤…≤an'。

    public static void insertionSort(int[] a){
        int key,i;
        for(int j=1;j<a.length;j++){
            key=a[j];
            i=j-1;
            while(i>=0&&a[i]>key){
                a[i+1]=a[i];
                i=i-1;
            }
            a[i+1]=key;
        }
    }

j表示正准备插入的数的下标,a[0,j-1]构成了当前排序好的数组,事实上,a[0,j-1]就是原来位置a[0,j-1]的元素,但现在已按序排列。

InsertionSort.java

相关文章

  • 算法导论-算法基础-插入排序

    插入排序 输入:n个数的一个序列 。输出:输入序列的一个排列 ,满足a1'≤a2'≤…≤an'。 j表示正准备插入...

  • 给我巨大影响的技术书籍

    算法《算法概论》《算法设计与分析基础》 Anany Levitin《算法引论》Udi Manber《算法导论》《什...

  • lecture 1

    算法导论Lesson1 课程简介: 内容主要包括: 算法的含义、意义的简要介绍; 算法的分析; 插入排序、合并排序...

  • 第1天-插入排序

    算法说明 插入排序是算法导论一书中第一个算法,在书中举了一个非常恰当的扑克牌例子来说明插入排序的算法原理:Inpu...

  • 插入排序

    《算法导论》第二章(算法基础) 2.1 插入排序 思路分析我们来想象一个有趣的例子,我们得到一个任务是:将一副扑克...

  • 2018-08-08 算法导论(2.1 插入排序)

    算法导论学习101 首先,对于插入排序算法的大致描述为下输入为: < a1, a2, a3, ... , an >...

  • 7月份之前的技术学习与计划

    读书计划 基础方面 算法:《算法》,《算法导论》,需要认真理解算法,并独立完成相关习题 语言:《JAVA编程思想》...

  • 讨厌算法的程序员 1 - 插入排序

    讨厌算法的程序员系列入口 什么是算法 在说插入排序之前,我们了解下《算法导论》对算法的从两种不同角度的定义。 一般...

  • 插入排序算法实现

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

  • 开发者应该掌握的几种排序算法

    该篇文章主要介绍了算法基础以及几种常见的排序算法:选择排序、插入排序、冒泡排序、快速排序、堆排序。 一、算法基础 ...

网友评论

      本文标题:算法导论-算法基础-插入排序

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