Hacker News new | ask | show | jobs
by jorgemf 3281 days ago
Where is a high level description of the algorithm? How is it different from quick sort, it seems quite similar based on a quick observation of the code.
1 comments

The readme file actually contains a fairly thorough description of how it differs from quicksort. Start with the section titled "the best case".
> On average case data where no patterns are detected pdqsort is effectively a quicksort that uses median-of-3 pivot selection

So basically is quicksort with a bit more clever pivot selection, but only for some cases.

You're forgetting probably the most important optimization: block partitioning. This one alone makes it almost 2x faster (on random arrays) than typical introsort when sorting items by an integer key.