QuickSort
This Quicksort algorithm uses the simplest partition method to divide the array into subproblems. I plan to upload a version that uses a partition method that ignores elements of values equal to the pivot value and returns subarrays on either side of the grouped values for Quicksort to recursively search through.
At somepoint I will upload implementations of randomized partitioning as well as median partitioning when my schedule allows.