冒泡、選擇排序

複習簡單的排序算法

public class TestSort {


public static void main(String[] args) {
    int[] array = {3,2,6,7,5,9,44,22,88,99,45};
    int size = array.length;
     //冒泡排序
    bubbleSort(size, array);
    //選擇排序
    //selectSort(size, array);
    printResult(size, array);
}

//冒泡
public static void bubbleSort(int size, int[] array) {
    for (int i=0; i<size; i++) {
        for (int j=0; j<size-1-i; j++) {
            if (array[j] > array[j+1]) {
                int temp = array[j+1];
                array[j+1] = array[j];
                array[j] = temp;
            }
        }
    }
}

//選擇排序
public static void selectSort(int size, int[] array) {
    for (int i=0;i<size;i++) {
        int tempMin = array[i];
        int minIndex = i;
        for (int j=i+1; j<size; j++) {
            if (tempMin > array[j]) {
                tempMin = array[j];
                minIndex = j;
            }
        }
        int temp = array[i];
        array[i] = tempMin;
        array[minIndex] = temp;
    }
}
//單一職責--打印結果
public static void printResult(int size, int[] array) {
    StringBuffer sb = new StringBuffer(size);
    for (int i=0; i<size; i++) {
        sb.append(array[i]).append(",");
    }
    System.out.println(sb.toString());
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章