Sorting Algorithm | Time Complexity | Space Complexity |
| Best Case | Average Case | Worst Case | Worst Case |
Bubble Sort | Ω(N) | Θ(N2) | O(N2) | O(1) |
Selection Sort | Ω(N2) | Θ(N2) | O(N2) | O(1) |
Insertion Sort | Ω(N) | Θ(N2) | O(N2) | O(1) |
Merge Sort | Ω(N log N) | Θ(N log N) | O(N log N) | O(N) |
Heap Sort | Ω(N log N) | Θ(N log N) | O(N log N) | O(1) |
Quick Sort | Ω(N log N) | Θ(N log N) | O(N2) | O(log N) |
Radix Sort | Ω(N k) | Θ(N k) | O(N k) | O(N + k) |
Count Sort | Ω(N + k) | Θ(N + k) | O(N + k) | O(k) |
Bucket Sort | Ω(N + k) | Θ(N + k) | O(N2) | O(N) |
Sort stability, Efficiency, Passes Comparison Table :
Sorting algorithm | Efficiency | Passes | Sort stability |
Bubble sort | 0(n2) | n-1 | stable |
Selection sort | 0(n2) | n-1 | unstable |
Insertion sort | 0(n) | n-1 | stable |
Quick sort | 0(n log n) | log n | unstable |
Merge sort | 0(n log n) | log n | stable |
Shell sort | 0(n) | log n | unstable |
Radix sort | 0(n) | No. of digits in the largest number | stable |