java - 冒泡排序

冒泡排序

排序原理

數組元素兩兩比較,交換位置,大元素往後放,那麼經過一輪比較後,最大的元素,就會出現在最大索引處。

package sort;

import java.util.Arrays;

//比較多少輪,每輪比較幾次
public class BubbleSort {
    public static void main(String[] args){
        int[] arr=new int[] {6,7,2,9,4,1,0,5,3};
        bubbleSort(arr);
        System.out.println(Arrays.toString(arr));
    }

    //交換數組元素
    public static void swap(int arr[],int a,int b){
        arr[a] = arr[a] + arr[b];
        arr[b] = arr[a] - arr[b];      //把arr[a]賦值給arr[b]
        arr[a] = arr[a] - arr[b];      //剩下的就是arr[a]
    }

    //冒泡排序
    public static void bubbleSort(int[] arr){
        //控制共比較多少輪
        for(int i =0;i< arr.length-1;i++){
            //控制每輪比較的次數
            for(int j=0;j< arr.length-1-i;j++)
            {
                if(arr[j] > arr[j+1]){
                    swap(arr,j,j+1);
                }
            }
        }
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章