C# implementation of the class libraries for the book Algorithms 4th Edition by Robert Sedgewick and Kevin Wayne. (Note: The original Java implementation is at http://algs4.cs.princeton.edu/code/)
- Binary search
- Quick find Union-Find
- Quick union Union-Find
- Weighted quick union Union-Find
- Weighted quick-union by rank with path compression Union-Find
- Insertion sort
- Optimized insertion sort with half exchanges and a sentinel
- Selection sort
- Shellsort
- Top-down mergesort
- Bottom-up mergesort
- Optimized mergesort with cutoff to insertion sort
- Quicksort
- Quicksort with 3-way partitioning
- Optimized quicksort using Bentley-McIlroy 3-way partitioning, Tukey's ninther, and cutoff to insertion sort
- Max and Min Priority Queues (Heap based, generic keys, ICollection<>)
- Max and Min Index Priority Queues (Heap based, generic priorities, IDictionary<>)
- Heapsort
- Input from files and urls
- Random distributions: Bernoulli, Uniform, Gaussian, Discrete, and Exponential
- Shuffling