首頁 > 網際網路

java面試常用演算法題(一)——氣泡排序

2019-12-10 07:21:56

要準備去面試了,整理了下面試官喜歡出的演算法題,僅供參考。本篇介紹常用排序演算法:氣泡排序,也是交叉排序的一種。


1

氣泡排序,這是面試官愛考的題目,基本運作是比較相鄰的兩個元素,小數放前面,大數放後面,將小數放在前面,大數放在後面,第一趟排序完成後最大的數放到了後面。然後再進行第二趟排序,重複,直到直到沒有任何一對數位需要比較。如初始狀態為【10 12  5  7  2】的一組資料進行氣泡排序。


2

第一趟排序,把最大數12排到了最後面。


3

第二趟排序,對前面四位數進行氣泡排序,把10放到了後面。


4

第三趟,對前面3位數進行氣泡排序,把7放到了後面。


5

第三趟,對前面2位數進行氣泡排序,把5放到了後面。氣泡排序完成。


6

java程式碼執行如下。

int[] arr=new int[]{10,12,5,7,2};

for(int i=1;i<arr.length;i++){

     for(int j=0;j<arr.length-i;j++){

          if(arr[j]>arr[j+1]){

               int temp=arr[j];

               arr[j]=arr[j+1];

               arr[j+1]=temp;

           }

      }

     System.out.print("第"+i+"趟排序結果:");

     for(int s:arr){

         System.out.print(s+"t");

     }

     System.out.println();

}



IT145.com E-mail:sddin#qq.com