氣泡排序原理及實現

2021-06-23 01:25:20 字數 911 閱讀 5180

氣泡排序就是每次將重的泡泡下沉,輕的泡泡上浮。通過一次次反覆的操作,實現排序目的。

下面看一下冒泡的實現

public class test;

bubblesort(data);

for(int i=0;i

system.out.print(data[i]+"  ");

private static void bubblesort(int data){

for(int i=data.length-1;i>0;i--){

for(int j=0;j

if(data[j]>data[j+1])

swap(data,j,j+1);

private static void swap(int data,int x,int y){

int temp = data[x];

data[x] = data[y];

data[y] = temp;

可以看到,在bubblesort中,每次迴圈都會將data中最大的元素交給迴圈中最後那個元素,這樣,大的氣泡乙個個下沉,迴圈結束了,排序也就完成了。

氣泡排序時間複雜度最差,平均都是o(n²),最好就是當排序資料已經排好的時候,時間複雜度為o(n)

氣泡排序原理及優化實現 JS

假設陣列中有n個數,比較相鄰的兩項,如果前者大於後者,就把兩個數交換位置。那麼第一輪過後就可以選出乙個最大的數放在最後面 經過n 1 陣列的length 1 輪,就完成了所有數的排序。var arr 9 1,5 8,3 7 function bubblesort arr return arr 1,3...

氣泡排序實現原理

原理 比較兩個相鄰的元素,將值大的元素交換至右端。思路 依次比較相鄰的兩個數,將小數放在前面,大數放在後面。即在第一趟 首先比較第1個和第2個數,將小數放前,大數放後。然後比較第2個數和第3個數,將小數放前,大數放後,如此繼續,直至比較最後兩個數,將小數放前,大數放後。重複第一趟步驟,直至全部排序完...

氣泡排序實現原理

原理 比較兩個相鄰的元素,將值大的元素交換至右端。思路 依次比較相鄰的兩個數,將小數放在前面,大數放在後面。即在第一趟 首先比較第1個和第2個數,將小數放前,大數放後。然後比較第2個數和第3個數,將小數放前,大數放後,如此繼續,直至比較最後兩個數,將小數放前,大數放後。重複第一趟步驟,直至全部排序完...