面試題-冒泡演算法
阿新 • • 發佈:2018-11-02
冒泡演算法,
原理是:比較第一個與後一個比較,如果第一個比後一個大,交換,那麼第一層遍歷完之後,末尾的最後一個一定是最大的。
所以第二次迴圈的時候只迴圈到倒數第三個就可以了。
以此類推。每層迴圈的次數會減一。
int temp; //外層迴圈是排序的趟數 for (int i = 0; i < arrays.length - 1 ; i++) { //內層迴圈是當前趟數需要比較的次數 for (int j = 0; j < arrays.length - i - 1; j++) { //前一位與後一位與前一位比較,如果前一位比後一位要大,那麼交換 if (arrays[j] > arrays[j + 1]) { temp = arrays[j]; arrays[j] = arrays[j + 1]; arrays[j + 1] = temp; } } }