โก Sorting Algorithm Complexity ๐
Best, average, and worst case complexity and stability for Quick Sort, Merge Sort, Timsort, Heap Sort, and every other major sorting algorithm โ quick revision notes.
โก Sorting Algorithm Complexity
Legend
- ฮฉ (Omega) โ Best case
- ฮ (Theta) โ Average case
- O (Big O) โ Worst case
- Stable? โ Yes / โ No
| # | Algorithm | โฑ๏ธ Best | โ๏ธ Average | ๐ป Worst | ๐พ Space | โ๏ธ Stability |
|---|---|---|---|---|---|---|
| 1๏ธโฃ | โก Quick Sort | ฮฉ(n log n) | ฮ(n log n) | O(nยฒ) | O(log n) | โ No |
| 2๏ธโฃ | ๐งฉ Merge Sort | ฮฉ(n log n) | ฮ(n log n) | O(n log n) | O(n) | โ Yes |
| 3๏ธโฃ | ๐ Timsort | ฮฉ(n) | ฮ(n log n) | O(n log n) | O(n) | โ Yes |
| 4๏ธโฃ | โฐ๏ธ Heap Sort | ฮฉ(n log n) | ฮ(n log n) | O(n log n) | O(1) | โ No |
| 5๏ธโฃ | ๐ง Bubble Sort | ฮฉ(n) | ฮ(nยฒ) | O(nยฒ) | O(1) | โ Yes |
| 6๏ธโฃ | โ๏ธ Insertion Sort | ฮฉ(n) | ฮ(nยฒ) | O(nยฒ) | O(1) | โ Yes |
| 7๏ธโฃ | ๐ช Selection Sort | ฮฉ(nยฒ) | ฮ(nยฒ) | O(nยฒ) | O(1) | โ No |
| 8๏ธโฃ | ๐ฒ Tree Sort | ฮฉ(n log n) | ฮ(n log n) | O(nยฒ) | O(n) | โ Yes |
| 9๏ธโฃ | ๐ Shell Sort | ฮฉ(n log n) | ฮ(n (log n)ยฒ) | O(n (log n)ยฒ) | O(1) | โ No |
| ๐ | ๐ชฃ Bucket Sort | ฮฉ(n + k) | ฮ(n + k) | O(nยฒ) | O(n) | โ Yes |
| 1๏ธโฃ1๏ธโฃ | ๐ข Radix Sort | ฮฉ(n k) | ฮ(n k) | O(n k) | O(n + k) | โ Yes |
| 1๏ธโฃ2๏ธโฃ | ๐งฎ Counting Sort | ฮฉ(n + k) | ฮ(n + k) | O(n + k) | O(k) | โ Yes |
| 1๏ธโฃ3๏ธโฃ | ๐ง Cube Sort | ฮฉ(n) | ฮ(n log n) | O(n log n) | O(n) | โ Yes |

Related Posts
- ๐งฑ Data Structures & Big O Complexity โ the Big O/Big Omega/Big Theta notation used throughout this comparison
- ๐ Searching Algorithm Complexity โ Binary Search and other sorted-data-dependent searches this sorting step enables
