【圖解資料結構】 一組動畫示範冒泡排序
算法步驟
- 比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。
- 對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。這步做完後,最後的元素會是最大的數。
- 針對所有的元素重複以上的步驟,除了最後一個。
- 持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。
算法示範
【圖解資料結構】 一組動畫示範冒泡排序 排序動畫過程解釋
- 将天平放在序列的右端,并比較天平左右的數字
- 在這種情況下我們比較 3 和 8
- 比較後如果右邊的數字較小,則被交換
- 因為 8 大于 3 ,是以數字不用交換
- 比較完成後,将天平向左移動一個位置,比較數字
- 因為 3 大于 2 ,是以數字不用交換
- 比較完成後,逐一移動天平,比較數字
- 此時 2 小于 4 ,是以左右的數字互相交換
- 重複同樣的操作,直到天平移動到左端
- 。。。。。。
- 天平到達左端
- 經過上述的操作,數列中最小的數字已經移動到左端
- 将天平傳回右端
- 重複相同的操作,直到所有數字都被排序
-
- 吐完泡泡了
參考代碼
C++
【圖解資料結構】 一組動畫示範冒泡排序 Java
Python
100) ? false:true" x-data="topBtn" @click="scrolltoTop" x-cloak>