ERufian / Algs4-CSharp

C# implementation of the class libraries for the book Algorithms 4th Edition by Robert Sedgewick and Kevin Wayne. (Note: Original Java implementation at http://algs4.cs.princeton.edu/code/)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Algs4-CSharp

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/)

Algs4

  • 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

Stdlib:

  • Input from files and urls
  • Random distributions: Bernoulli, Uniform, Gaussian, Discrete, and Exponential
  • Shuffling

About

C# implementation of the class libraries for the book Algorithms 4th Edition by Robert Sedgewick and Kevin Wayne. (Note: Original Java implementation at http://algs4.cs.princeton.edu/code/)

License:GNU General Public License v3.0


Languages

Language:C# 100.0%