简单插入排序--Java实现

package com.shusheng.insertSort;

/** * 简单插入排序(作图分析) * @author Administrator */
public class SimpleInsertSort {

    /** * 简单插入排序 * @param args */
    public static void simpleInsertSortMethod(int[] args){

        for (int i=1,j=0,temp=0; i<args.length; i++) {//i表示待排序的那个元素下标(作图分析)
            j = i; temp = args[i];//一定要使用临时变量保存起来,不然下面移动位置的话,待排序的值就被覆盖了。
            while(j>=1 && args[j-1]>temp){//从前面的有序序列中移出一个位置给带排序元素插入
                args[j] = args[j-1];j--;//args[j] = args[j-1];表示将元素往后移动(作图分析)
            }
                args[j] = temp;//将待排序元素插入到合适位置
        }
    }

    public static void main(String[] args) {
        int[] args1 = {12,53,48,26,48,62,43,46};
        simpleInsertSortMethod(args1);
        for (int i = 0; i < args1.length; i++) {
            System.out.println(args1[i]);
        }
    }
}

你可能感兴趣的:(插入排序,java插入排序,Java简单插入排序)