把一副打亂的撲克牌理成順子,有人一張一張往手裡插、有人先分好堆再合併——同樣是「排好」,做法不同、快慢也差很多。電腦排序也是這樣:氣泡排序兩兩相鄰慢慢換、快速排序挑個基準把大小分兩邊、合併排序先拆散再併回。重點是沒有一種排序在所有情況都最快,得看資料是幾乎排好、完全顛倒還是一堆重複值。下面你會看到幾種排序同步賽跑,直接比出誰的比較與交換次數更少。
這頁把多種排序演算法放在一起同步播放,用同一組資料餵給它們,你可以直接比較:誰的「比較次數」和「交換次數」比較少、 誰在資料「幾乎已排好」或「大量重複」或「完全逆序」時特別快或特別慢。上方可勾選要比較的演算法、切換不同的測試資料型態。 重點不是背哪個最快,而是看出沒有一種排序在所有情況都最好——選哪個要看資料長什麼樣。