手寫冒泡排序--Java

/**
*雙重for循環
* 原理是這樣的: 第一層循環遍歷拿出第一個數據。而後開始了第二層循環,
* 	第二層循環先拿出來i++後的數據進行和第一層拿到的數據進行對比,
*	若是相比後,第一層循環大於第二層循環拿到的數據,
*	將第一層的數據和第二層的數據進行交換(小的拿到前面去,而後繼續循環對比,直到循環結束)
*/
    public static void main(String[] args) {
        int[] arr = {5, 1, 18, 2, 45, 31};
        for (int i = 0; i < arr.length - 1; i++) {
            for (int j = i; j < arr.length; j++) {
		//第一層循環拿到的數據和第二層循環拿到的數據進行對比
                if (arr[i] > arr[j]) {//若是第一層的大於第二層的,進行交換數據
                    int temp = arr[j];
                    arr[j] = arr[i];
                    arr[i] = temp;
                }
            }
        }
        System.out.println(Arrays.toString(arr));
    }
相關文章
相關標籤/搜索