简单排序

 

java中分别使用冒泡排序、选择排序、插入排序对数组进行排序

 1 package com.peter.array;
 2 
 3 /**
 4  * 数组--排序
 5  * 冒泡排序、选择排序、插入排序
 6  * @author dddeng
 7  *
 8  */
 9 public class BubbleSort {
10 
11     private long[] a;
12     private int nElems;
13     
14     public BubbleSort(int max){
15         a = new long[max];
16         nElems=0;
17     }
18     
19     public void insert(long value) {
20         a[nElems] = value;
21         nElems++;
22     }
23     
24     public void display(){
25         for (int i = 0; i < nElems; i++) {
26             System.out.print(a[i]+" ");
27         }
28         System.out.println("");
29     }
30     
31     /*
32      * 冒泡排序方法
33      */
34     public void bubbleSort(){
35         int out,in;
36         for ( out = nElems-1; out >0; out--) {
37             for(in =0;in< out;in++){
38                 if(a[in]> a[in+1])
39                 {
40                     swap(in, in+1);
41                 }
42             }
43         }
44     }
45     
46     /*
47      * 选择排序
48      */
49     public void selectionSort(){
50         int out,in,min;
51         for(out =0;out<nElems;out++){
52             min = out;
53             for(in = out+1;in<nElems;in++){
54                 if(a[in]< a[min])
55                     min = in;
56             }
57             swap(out, min);
58         }
59     }
60     /*
61      * 插入排序
62      */
63     public void insertionSort(){
64         
65         int in ,out;
66         for(out =1;out<nElems;out++){
67             
68             long temp = a[out];
69             in = out;
70             while(in>0 && a[in-1]>temp){
71                 a[in]= a[in-1];
72                 --in;
73             }
74             a[in]= temp;
75         }
76     }
77     
78     private  void swap(int one,int two){
79         long temp = a[one];
80         a[one] =a[two];
81         a[two]=temp;
82     }
83     
84 }

测试使用:

    public static void main(String[] args){
        
        int maxSize = 10;
        BubbleSort arr = new BubbleSort(maxSize);
        arr.insert(11);
        arr.insert(77);
        arr.insert(99);
        arr.insert(22);
        arr.insert(88);
        
        arr.insert(33);
        arr.insert(10);
        arr.insert(66);
        arr.insert(44);
        arr.insert(55);
        arr.display();
        arr.bubbleSort();//冒泡排序
        //arr.selectionSort();//选择排序
        //arr.selectionSort();//插入排序
        arr.display();
    }

 

 

posted @ 2014-07-04 13:21  逍遥锅锅  阅读(124)  评论(0编辑  收藏  举报