學習冒泡排序的原理和相關代碼
冒泡排序
冒泡排序的原理:
舉例說明,相關原理
代碼實際操作:
PHP代碼(冒泡排序)
解釋:為了方便理解,在第6行自定義了一個簡單的數組 array(4,3,2,1)。
在代碼中有兩層for循環,一個if判斷
第一層for循環控制趟數,第15行($i < $len - 1)就是控制行數,這取決於數組內部數的個數。(本案例有4個數值,它的趟數為3)
第二層for循環控制數的比較次數,第17行($k < $len - 1 - $i)這是數組內數與數 比較的次數,為什麼要減 $i,因為 $i 正好符合這裡面的需求,在第一趟中數與數之間的比較有3次($len - 1,其中$len等於4),在第二趟中數與數之間的比較有2次,第三趟等後面的都在減1,需要一個變量,$i符合需求,第一次為0、第二次為1、第三次為2。
if判斷,第19行用來判斷,數組前一個數,是否大於後一個數,如果大於,就將它們的數換位置(例如:數組第一個:4,數組第二個:3, 4>3 將數組第一個與第二個換位置 ,後面的也如此),進行存放,直到數組最後一個數。
效果圖片:
排序結果