This repository shows implementation for the Major Sort Algorithm. Aim not to use LINQ or similar ease to use, but memory unefficient technique.
You can check various benchmark patterns at GitHub Actions/Benchmark.
- Binary Insertion Sort
- Gnome Sort
- Insertion Sort
- Library Sort
- Merge Insertion Sort
- Pair Insertion Sort
- Shell Sort
- Knuth1973
- Sedgewick1986
- Tokuda1992
- Ciura2001
- Lee2021
- Block Merge Sort
- Bottom-Up Merge Sort
- Flat Stable Sort
- Glidesort
- Merge Sort
- Natural Merge Sort
- Pingpong Merge Sort
- Power Sort
- Rotate Merge Sort
- Iterative
- Recursive
- Shift Sort
- Spin Sort
- Spin Sort (Boost)
- std::stable_sort (LLVM)
- SymMerge Sort
- Tim Sort
- Bottom-Up Heap Sort
- Heap Sort
- Min-Heap Sort
- Smooth Sort
- Ternary Heap Sort
- Tournament Sort
- Weak Heap Sort
- Quick Sort (Bidirectional Stable)
- Block Quick Sort
- Quick Sort (Destswap Stable)
- Quick Sort (Dual Pivot)
- Intro Sort
- Intro Sort (Dotnet)
- Pattern-Defeating Quick Sort
- Quick Sort
- Quick Sort (3-Way)
- Quick Sort (Median of 3)
- Quick Sort (Median of 9)
- Quick Sort (Stable)
- std::sort (LLVM)
- American Flag Sort
- Bucket Sort
- Counting Sort
- Flash Sort
- Pigeonhole Sort
- Radix LSD Sort (Base 10)
- Radix LSD Sort (Base 256)
- Radix LSD Sort (Base 4)
- Radix MSD Sort (Base 10)
- Radix MSD Sort (Base 4)
- Spread Sort
- Batcher Odd-Even Merge Sort
- Bitonic Sort
- Iterative
- Recursive