冒泡排序2则

  1. 冒泡排序代码1
  2. 冒泡排序代码2

冒泡排序代码1

public class BubbleSort {  
    public BubbleSort() {  
    }  
    /** 
     * 冒泡排序 
     * @param arr  排序前数组 
     * @return 排序后数组 
     */  
    private int[] bubbleSort(int[] arr) {  
        int i = arr.length;  
        int j;  
        while (i > 0) {  
            for (j = 0; j < i - 1; j++) {// j:比较的次数  
                if (arr[j] > arr[j + 1]) {  
                    int tmp = arr[j];  
                    arr[j] = arr[j + 1];  
                    arr[j + 1] = tmp;  
                }  
            }  
            i--;// 比较的组数  
        }  
        return arr;  
    }  

    /** 
     * @param args 
     */  
    public static void main(String[] args) {  
        int[] arr = { 1, 4, 10, 8, 3, 7, 0, 6, 5, 2, 9 };  
        BubbleSort bsort = new BubbleSort();  
        int[] a2 = bsort.bubbleSort(arr);  
        for (int m = 0; m < a2.length; m++) {  
            System.out.printf("%-4s", a2[m]);  
        }  
    }  
}  

冒泡排序代码2

public class Sort {  

    /** 
     * bubble sort 
     *  
     * @param ia 
     *            需要排序的数组 
     */  
    public static void bubbleSort(int[] ia) {  
        int i = ia.length;  
        int temp;  
        while (i > 0) {  
            for (int j = 0; j < i - 1; j++) {  
                if (ia[j] > ia[j + 1]) {  
                    temp = ia[j];  
                    ia[j] = ia[j + 1];  
                    ia[j + 1] = temp;  
                }  
            }  
            i--;  
        }  
    }  

    public static void printArr(int[] ia) {  
        for (int a : ia) {  
            System.out.print(a + " ");  
        }  
    }  

    public static void main(String[] args) {  
        // 等待排序数组  
        int[] ia = { 4, 64, 2, 98, 7, -32, 0, 996, 43, 58, -32323, 84, 86, 8, 9 };  
        // 冒泡排序  
        bubbleSort(ia);  
        // 打印排序后结果  
        printArr(ia);  
    }  
}  

—[2012-12-30]—


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 hi@niewj.com

×

喜欢就点赞,疼爱就打赏