氣泡排序的2種寫法

2021-09-07 17:10:44 字數 740 閱讀 1245

假如有幾個數字 int score = ;  按照從大到小排序。

有2種思路:

第一種思路:score[j] 和 score[j+1] 比較,如果前者比後者小,把前者和後者調換順序,兩兩調換後一輪下來,最小的會被排到最後去。

每一輪j都從0開始,當i輪排序,就有最後面的i個數字因為他是最小的,所以後面的每輪都不用理他了,也就是 score.length-1-i  往後的數不用管了,如上,第一輪有4個數字 i為0 ,那麼score.length-1-i  為3,也就是下標是3以後的可以不用管,3往後沒有數字,所以第一輪所有的數字都要參加比較,第二輪i=1,score.length-1-i  為2 也就是說 下標2後面的 下標為3的數字不用比了,因為兩兩比較厚,67會到 score[3],實現**如下:

var a = [2,3,4,5,9,8,6

];function sort(a)}}

}sort(a);

第二種思路:用 88 和 75 比較,再和69比較,再和 67 比較,發現88是最大的,把他排到第一位;然後 i=1,也就是第二輪,就不用看下標為 0 的 88 了,因為他是老大,然後接著比較。實現**如下:

var a = [1,2,3,4,5,6,9,8,6

];function sort(a)}}

returna;}

sort(a)

要理解j = a.length - 2 和 j >= i。

氣泡排序的2種寫法

假如有幾個數字int score 按照從大到小排序。有2種思路,第一種,score j 和 score j 1 比較 如果 前者比後者小,把前者和後者調換順序,兩兩調換後一輪下來 最小的會被排到最後去。每一輪j都從0開始,當i輪排序,就有最後面的i個數字因為他是最小的,所以後面的每輪都不用理他了,也...

氣泡排序的2種寫法

假如有幾個數字 int score 按照從大到小排序。有2種思路 第一種思路 score j 和 score j 1 比較,如果前者比後者小,把前者和後者調換順序,兩兩調換後一輪下來,最小的會被排到最後去。每一輪j都從0開始,當i輪排序,就有最後面的i個數字因為他是最小的,所以後面的每輪都不用理他了...

氣泡排序4種寫法 java

寫一點自己對冒牌排序的理解 int arr new int length 1,通過對比相鄰2個數,得到最大 最小數 1 從前往後比,每次篩選出最後一位for int i 0 i第一輪對比得到最後乙個位置的準確數。第二輪對比應該只比到倒數第二位,依次類推,另一種寫法 for int i arr.len...