1. 程式人生 > 實用技巧 >Java字串04-氣泡排序

Java字串04-氣泡排序

氣泡排序:

package doudou;
public class test_maopao {
    public static void main(String[] args) {
        int[] before = { 10, 24, 34, 9, 15, 6, 55 };
        System.out.println(before);//輸出的是地址
        maopao(before);
    }

    public static int[] maopao(int[] before) {

/*
*

*

       思路 1.先判斷是否為空,為空的話原樣返回

         2.不會空的話,求長度 ,相鄰2個字元做比較
          第一輪-0:
              第一次:第一位和第二位比較 如果第一位>第二位,交換,否則不交換
              第二次: 第二位和第三位交換 如果第二位>第三位,交換,否則不交換
              依次類推 直到最後 倒數第二位和倒數第一位比較,退出。(第一輪結束,將最大的數冒泡冒泡到最後一位!!!)
          進入第二輪-1的迴圈:


          第二輪結束,將次最大的數冒泡到倒數第二位。(第二輪結束,將次最大的數冒泡冒泡到最後二位!!!且交換比較的截止位置是length-1-1)

          依次。。。
              
          
    
*
*
*/

        if (before.length <= 1) {
            return  before;
        } 
        else if (before.length > 1) {
            int before_length = before.length;//長度為7
            for (int i = 0; i < before_length - 1; i++) {//外層
迴圈幾次 能使陣列按照從小到大排序 for(int j=0;j<before_length-i-1;j++)//交換 第一輪將最大的數放在最後,... if (before[j] > before[j+1]) { // 交換 int temp = 0; temp = before[j + 1]; before[j + 1] = before[j]; before[j] = temp; } } }
for(int i = 0; i < before.length; i++) { System.out.print(before[i]+ " "); } return before; } }