#### 1. 什么是冒泡排序 ? --- 冒泡排序的英文名是 Bubble Sort,是一種最基礎(chǔ)的交換排序算法。 相信每個(gè)人都喝過(guò)汽水吧,在汽水中常有許多的小氣泡往上飄,這是因?yàn)榻M成氣泡的二氧化糖比水要輕,所以小氣泡才會(huì)一點(diǎn)一點(diǎn)往上浮,而冒泡排序之所以叫冒泡排序,正是因?yàn)檫@種排序算法的每一個(gè)元素都可以像小氣泡一樣,根據(jù)自身的大小,一點(diǎn)一點(diǎn)的像數(shù)組的一側(cè)移動(dòng) #### 2. 冒泡排序算法 --- 一組無(wú)序的數(shù)列想要從小到大排序,通過(guò)遍歷數(shù)組,比較相鄰的兩個(gè)元素,當(dāng)左邊的值大于右邊的值時(shí),交換雙方的值 這是標(biāo)準(zhǔn)的冒泡排序算法,排序過(guò)程如下圖所示: ![](https://img.itqaq.com/art/content/1da865ef68530d4f115cd223e89455bd.gif) ```php /** * 冒泡排序算法 * * @param array $arr */ function bubbleSort(array $arr) { $count = count($arr); for ($i = 0; $i < $count - 1; $i++) { for ($j = 0; $j < $count - $i - 1; $j++) { if ($arr[$j] > $arr[$j + 1]) { $tmp = $arr[$j]; $arr[$j] = $arr[$j + 1]; $arr[$j + 1] = $tmp; } } } return $arr; } ``` #### 推薦文章 --- [冒泡排序算法](https://blog.csdn.net/lu_1079776757/article/details/80459370 "冒泡排序算法")