首页 > 其他 > 详细

SelectSort

时间:2017-11-17 23:19:44      阅读:380      评论:0      收藏:0      [点我收藏+]
/*
* selectSort.java
* demonstrates selection sort
* use long[] a for example
*/

public class ArraySel {
    //ref array
    private long[] a;
    private int nElems;

//    ---------------------
    //constructor
    public ArraySel(int max) {
        //creat an array
        a = new long[max];
        nElems = 0;
    }
//    -----------------------
    //insert element into array
    public void insert(long value) {
        a[nElems] = value;
        nElems++;
    }
//    ----------------------
    //display array contents
    public void display() {
        for (int j = 0; j < nElems-1; j++) {
            System.out.print(a[j] + "\t");
        }
        System.out.println("");
    }
//    ---------------------
    public void selectionSort() {
        int out, in, min;

        for (out = 0; out < nElems-1; out++) {
            min = out;
            for (in = out+1; in < nElems; in++) {
                if (a[in] < a[min]) {
                    min = in;
                }
                swap(out, min);
            }
        }
    }
//    --------------------------------
    public void swap(int one, int two) {
        long temp;
        temp = a[one];
        a[one] = a[two];
        a[two] = temp;
    }
}
//end class ArraySel

public class SelectSortApp {
    public static void main(String[] args) {
        int maxsize = 100;
        ArraySel arr;
        arr = new ArraySel(maxsize);

        arr.insert(88);
        arr.insert(5);
        arr.insert(66);
        arr.insert(31);
        arr.insert(1);
        arr.insert(98);
        arr.insert(69);

        arr.display();

        arr.selectionSort();
        arr.display();
    }
}

SelectSort

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

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