插入排序

来源:互联网 发布:swift model数组 编辑:程序博客网 时间:2024/06/03 19:19

/**
*插入排序:每次外循环out之后可以保证out个元素找到自己的位置
* @author iamwiam
*
*/
public class InsertSort {

private int[] a;private int nElem;public InsertSort(int max){    a = new int[max];    nElem = 0;}public void insert(int value){    a[nElem] = value;    nElem++;}public void display(){    for(int j=0;j<nElem;j++)        System.out.print(a[j]+" ");    System.out.println("");}public void insertionSort(){    int in,out;    for(out =1;out<nElem;out++){        int temp = a[out];        in = out;        while(in>0&&a[in-1]>=temp){            a[in] = a[in-1];            --in;        }        a[in]  = temp;    }}public static void main(String[] args) {    int maxSize =100;    InsertSort ins = new InsertSort(maxSize);    ins.insert(77);    ins.insert(99);    ins.insert(44);    ins.insert(55);    ins.insert(22);    ins.insert(88);    ins.insert(11);    ins.insert(00);    ins.insert(66);    ins.insert(33);    ins.display();    ins.insertionSort();    ins.display();}

}

0 0