tianhongyan1122的专栏

田红岩的笔记

[排序算法,插入排序]--直接插入排序

public class InsertPaixu {
    public static void test(int[] a){
        if(a.length==1){
            System.out.print(Arrays.toString(a));
        }else {
            for (int i = 1; i < a.length; i++) {
                int j = i - 1;
                int temp = a[i];
                while (a[i] < a[j] && j>0) {
                    j--;
                }
                for (int k = i; k >= j + 1; k--) {
                    a[k] = a[k - 1];
                }
                a[j] = temp; 
            }
            System.out.print(Arrays.toString(a));
        }
    }
    public static void main(String args[]){
        test(new int[]{0,9,1,3,2,0,0,-1});
    }
}

时间复杂度 O(n2),空间复杂度O(1)
阅读更多
文章标签: 排序算法
上一篇[排序算法,选择排序]--冒泡排序
下一篇[排序算法,选择排序]--快速排序
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭