Excellent. I guess I need to review my group settings so I see the responses. I'll review those tests tomorrow.
I should have written the midpoint as just /2 instead of shift and the initial == check isn't necessary. Seems the Go version on GitHub has some interest. --David On Wednesday, November 22, 2017 at 1:03:18 PM UTC-5, David McManamon wrote: > > Sometimes it takes years for great technical papers to be implemented. As > a fun exercise to compare Java's dual-pivot (since so much work went into > it) with the 3-pivot described in the paper: > Multi-Pivot Quicksort: Theory and Experiments > downloaded from: > http://epubs.siam.org/doi/pdf/10.1137/1.9781611973198.6 > I wrote the 3-pivot quicksort described in the paper and for sorting 10 > million elements it was about 10% faster than Arrays.sort() and completes > in 1 second on my 2013 computer. > Feel free to run the code if you have any doubts: > > https://github.com/dmcmanam/quicksort/tree/master/src > > And I wrote a quick blog post for background which also explains why I'm > looking for languages like Go to implement this in: > > > https://refactoringlightly.wordpress.com/2017/11/21/multi-pivot-quicksort-aka-3-pivot-quicksort/ > > Any interest in working with me to write a Go version? Some discussion & > pair programming would be fun since so far I have only written 1 go > algorithm - AVL trees since I was surprised to see people using LLRB in Go > but I was guessing there is less interest in better balanced binary search > trees. The project would have a few steps, working on benchmarks for edge > cases, etc. > > --David > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.