经典排序 —— 插入排序

2019-04-24  本文已影响0人  叫我宫城大人

基本思想

每步将一个待排序的记录,按其顺序码大小插入到前面已经排序的子序列的合适位置,直到全部插入排序完为止。

image

算法实现

package cn.caojiantao.tutorials.sort;

/**
 * @author caojiantao
 */
public class Insert implements ISort {

    @Override
    public void sort(int[] data) {
        for (int i = 1; i < data.length; i++) {
            int key = data[i], j = i - 1;
            for (; j >= 0; j--) {
                if (key < data[j]) data[j + 1] = data[j];
                else break;
            }
            data[j + 1] = key;
        }
    }
}

复杂度

上一篇 下一篇

猜你喜欢

热点阅读