Наихудший случай для быстрой сортировки на самом деле хуже, чем heapsort и mergesort, , но быстрая сортировка в среднем быстрее.
Что касается того, почему объяснение потребуется, и поэтому я буду ссылатьсяto Skiena, Руководство по разработке алгоритма.
Цитата, которая суммирует быструю сортировку против слияния / heapsort:
Когда сталкиваются с алгоритмами такой же асимптотической сложности,детали реализации и системные особенности, такие как производительность кеша и объем памяти, вполне могут оказаться решающим фактором.Что мы можем сказать, так это то, что эксперименты показывают, что если правильно реализованная быстрая сортировка реализована хорошо, она обычно в 2-3 раза быстрее, чем mergesort или heapsort.Основная причина в том, что операции в самом внутреннем цикле проще.Но я не могу с вами спорить, если вы мне не верите, когда я говорю, что быстрая сортировка быстрее.Это вопрос, решение которого лежит за пределами аналитических инструментов, которые мы используем.Лучший способ понять это - реализовать как алгоритмы, так и эксперимент.