This module consists of various sorting algorithms that are very much useful in realtime developments and their time complexity analysis.
- Selection Sort
- Bubble Sort
- Recursive Bubble Sort
- Insertion Sort
- Recursive Insertion Sort
- Merge Sort
- Iterative Merge Sort
- Quick Sort
- Iterative Quick Sort
- Heap Sort
- Counting Sort
- Radix Sort
- Bucket Sort
- ShellSort
- TimSort
- Comb Sort
- Pigeonhole Sort
- Cycle Sort
- Cocktail Sort
- Strand Sort
- Bitonic sort
- Pancake sorting
- Binary Insertion Sort
- BogoSort or Permutation Sort
- Gnome Sort
- Sleep Sort – The King of Laziness / Sorting while Sleeping
- Stooge Sort
- Tag Sort (To get both sorted and original)
- Tree Sort
- Cartesian Tree Sorting
- Odd-Even Sort / Brick Sort
- Selection Sort [Ω(n^2) -> θ(n^2) -> O(n^2)]
- Bubble Sort [Ω(n) -> θ(n^2) -> O(n^2)]
- Insertion Sort [Ω(n) -> θ(n^2) -> O(n^2)]
- Heap Sort [Ω(n log(n)) -> θ(n log(n)) -> O(n log(n))]
- Quick Sort [Ω(n log(n)) -> θ(n log(n)) -> O(n^2)]
- Merge Sort [Ω(n log(n)) -> θ(n log(n)) -> O(n log(n))]
- Bucket Sort [Ω(n+k) -> θ(n+k) -> O(n^2)]
- Radix Sort [Ω(nk) -> θ(nk) -> O(nk)]