首页 > 编程语言 > 详细

插入排序

时间:2017-11-20 12:08:08      阅读:208      评论:0      收藏:0      [点我收藏+]
/*
*  insertSort.java
*  demonstrates insertion sort
*/
public class ArrayIns {
    //creat array
    private long[] a;
    private int nElems;
    
    //constructor
    public ArrayIns(int max) {
        a = new long[max];
        nElems = 0;
    }
    
    //put elements into array initially
    public void insert(long value) {
        a[nElems] = value;
        nElems++;
    }
    
    //display array
    public void display() {
        for (int j = 0; j < nElems; j++) {
            System.out.print(a[j] + "\t");
        }
        System.out.println("");
    }
    
    //function for insertionSort
    public void insertionSort() {
        int in, out;
        
        for (out = 1; out < nElems; out++) {
            long temp = a[out];
            in = out;
            while(in > 0 && a[in-1] >= temp) {
                a[in] = a[in-1];
                --in;
            }
            a[in] = temp;
        } //end for
    } //end insertionSort
} //end class ArrayIns

public class InsertSortApp {

    public static void main(String[] args) {
        int maxSize = 100;
        ArrayIns arr;
        arr = new ArrayIns(maxSize);
        
        arr.insert(100);
        arr.insert(5);
        arr.insert(55);
        arr.insert(44);
        arr.insert(32);
        arr.insert(87);
        arr.insert(23);
        arr.insert(1);

        arr.display();
        
        arr.insertionSort();
        arr.display();
    } //end main
} //end class InsertSortApp

插入排序

原文:http://www.cnblogs.com/mmsumz/p/7865405.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!