【Java練習】冒泡排序

  需求:對數組[8,99,5,3,6,7,22]進行冒泡升序排序。

        思路:相鄰兩元素比較,如果符合條件就換位。每次結束後確定最大值放在最後位置,在後幾次排序不用管該位置。

/*
需求:對數組[8,99,5,3,6,7,22]進行冒泡排序。
思路:相鄰兩元素比較,如果符合條件就換位。每次結束後確定最大值放在最後位置,在後幾次排序不用管該位置。
 步驟:
 1、定義冒泡排序子函數:
 (1)用兩個for循環選擇數組元素;
 (2)用if語句判斷,交換元素。
 2、定義打印子函數
 3、主函數內定義數組並初始化,調用子函數
 */
public class BubbleSort {

	static void PaiXu2(int [] arry)
	{
		for(int i=0;i<arry.length-1;i++)//確定比較次數
		{
			
			for(int j=0;j<arry.length-i-1;j++)//讓每次比較元素減少
			{
				if (arry[j]>arry[j+1])  
                {  
                   int temp =arry[j];  
                   arry[j]=arry[j+1];  
                   arry[j+1]=temp;  
                } 
			}

		}
	}
	//定義打印函數
    static void printarry(int [] arry)
    {
    	System.out.print("[");
    	for(int i=0;i<arry.length;i++)
    	{
    		if (i!=arry.length-1)
    			System.out.print(arry[i]+",");
    		else 
    			System.out.print(arry[i]+"]");
    	}
    }
	public static void main(String[] args) 
	{
		//調用子函數
        int [] arry= {8,123,6,7,122};
        System.out.print("排序前的數組:");
        printarry(arry);
        PaiXu2(arry);
        System.out.println();
        System.out.print("排序後的數組:");
        printarry(arry);
       

	}

}

 

 

 

運行結果:

排序前的數組:[8,123,6,7,122]
排序後的數組:[6,7,8,122,123]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章