April 2018
Beginner to intermediate
426 pages
10h 19m
English
The following table shows the complexities for sorting algorithms:
| Algorithm (applied to Array) | Time Complexity | ||
| Best Cases | Average Cases | Worst Cases | |
| Bubble sort | O(n) | O(n2) | O(n2) |
| Selection sort | O(n2) | O(n2) | O(n2) |
| Insertion sort | O(n) | O(n2) | O(n2) |
| Shell sort | O(n log(n)) | O (n log2(n)) | O (n log2(n)) |
| Merge sort | O(n log(n)) | O(n log(n)) | O(n log(n)) |
| Quick sort | O(n log(n)) | O(n log(n)) | O(n2) |
| Heap sort | O(n log(n)) | O(n log(n)) | O(n log(n)) |
| Counting sort | O(n+k) | O(n+k) | O(n+k) |
| Bucket sort | O(n+k) | O(n+k) | O(n2) |
| Radix sort | O(nk) | O(nk) | O(nk) |