排序-JAVA实现【三】插入排序

package org.lion.euler.study.sort;

/**
 * 插入排序
 * <pre>
 * 原理:从第二个值开始,依次比较与值之前的所有值,直到比该值小的值之后,然后插入。
 * </pre>
 * @author lion
 *
 */
public class InsertSort extends AbstractSort {

	@Override
	public void sort(Integer[] array) {
		for (int i = 0, j = i; i < array.length - 1; j = ++i) {
            int ai = array[i + 1];
            while (ai < array[j]) {
            	array[j + 1] = array[j];
                if (j-- == 0) {
                    break;
                }
            }
            array[j + 1] = ai;
        }
	}

}

猜你喜欢

转载自blog.csdn.net/jiangxuexuanshuang/article/details/80229340