溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

冒泡排序算法

發布時間:2020-06-14 17:22:22 來源:網絡 閱讀:170 作者:殘缺的美13 欄目:編程語言

?????????????????????????????????冒泡排序算法

1. 原理

          冒泡排序,顧名思義就是將想冒泡一樣將最大的那個數冒到最高點。
          在一個數組中,遍歷這個數組,從第一個數開始,和后面一個數兩兩比較,
          如果前面一個數比后面一個數大,就交換2個數的位置,這樣可保證數組中
          最大的那個數一定在最后一位。這是第一次比較,接下來這個最大的數就
          不參與比較了,第二次比較重復上面操作,將第二大的數放在倒數第二位。
          同理,每次都把最大的數放在參與比較的數的最后一位,
          比到參與的只剩下一位數時,排序完成。

2.舉例

    假設有個長度為4的數組 a[]={22,3,44,21},下面用冒泡排序算法對其進行升序排序。
    第一趟比較:22和3比較,22大于3,于是交換位置 數組變成 a[]={3,22,44,21}
                         22和44比較,22小于44,不做操作 數組為a[]={3,22,44,21}
                         44和21比較,44大于22,于是交換位置 數組為a[]={3,22,21,44}   
                         44成功冒泡,44不參與下一趟比較了
     第二趟比較:3和22比較,3小于22,不做操作 數組為a[]={3,22,21,44}
                          22和21比較,22大于21,于是交換 數組變為a[]={3,21,22,44}  
                           22成功冒泡,44和22不參與下一趟比較
    第三趟比較:3和21比較,3小于21 不做操作 數組為a[]={3,21,22,44}   
                          21和22比較,21小于22 不做操作 數組為a[]={3,21,22,44}  
                           21成功冒泡,44,22,21不參與下次比較
     由于參與比較的只剩下3一個數了,排序結束,結果為數組升序排序。                     

3.java代碼實現

package sort;

import java.util.Arrays;

public class BubbleSort {
    public static void main(String[] args) {
        int a[]={22,3,44,21};
        bubbleSort(a);
        System.out.println(Arrays.toString(a));
    }   
    //冒泡排序算法
    public static void bubbleSort(int[] a){
        int temp;
        for(int i=0;i<a.length-1;i++){
            for(int j=0;j<a.length-1-i;j++){
                if(a[j]>a[j+1]){
                    temp=a[j];
                    a[j]=a[j+1];
                    a[j+1]=temp;
                }
            }
        }
    }
}

打印結果為:[3, 21, 22, 44]

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女