插入排序

谁都会走 提交于 2019-11-26 20:02:01

插入排序是非常简单的一种排序,思想是保证0到n-1躺是排序的,比如说首先拿第二个元素和第一个元素进行比较,进行位置转换,然后拿第三个位置的元素依次和第二个,第一个进行比较,转换位置。大致就那么简单,如下代码:

public class Sort {    /**     * 插入排序  保证从0到位置n上已经排序过了,即从第二个元素开始和前面的进行比较,然后换位置     *      思路  由两层遍历, 外层遍历 n-1 ,内层遍历转换 如下代码     *     */    public static void main(String[] args) {        int[] a = {12, 42, 7, 22, 78};        insertSort(a);        System.out.println(Arrays.toString(a));    }    public static void insertSort(int[] a) {        for(int i = 1; i < a.length; i++) {            int j;            int tmp = a[i];            for(j = i; j > 0 && tmp < a[j-1]; j--) {                a[j] = a[j-1];            }            a[j] = tmp;        }    }}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!