Soha válasszon egy fix csap - ez lehet támadni kihasználni a algoritmus legrosszabb esetben O (n ^ 2) futásidejű, ami csak bajt. Gyorsrendezés legrosszabb esetben futásidejű akkor jelentkezik, ha particionálás eredménye egy tömb 1 elem, és egy tömb n-1 elemek. Tegyük fel, hogy úgy dönt, az első elem, mint a partíciót. Ha valaki táplálja tömb a algoritmust, amely szerint csökkenő sorrendben az első pivot lesz a legnagyobb, így minden mást a tömb mozog a bal oldalán. Aztán, ha rekurzív, az első elem lesz a legnagyobb újra, így még egyszer, hogy mindent a bal oldalon, és így tovább.
A jobb technika a medián-of-3 módszer, ahol felveheti a három elem véletlenszerűen, és válassza ki a közepén. Tudod, hogy az elem, amely úgy dönt, nem lesz az első vagy az utolsó, hanem a centrális határeloszlás-tétel, a forgalmazás, a középső elem lesz normális, ami azt jelenti, hogy akkor inkább a közepe felé (és ennélfogva , n lg n idő).
Ha feltétlenül garantálni akarjuk O (nlgn) futásidő az algoritmus, az oszlopok-of-5 módszer megtalálására a medián tömb lépésszáma O (n) idő alatt, ami azt jelenti, hogy a kiújulás egyenletet quicksort a legrosszabb esetben lesz lehet T (n) = O (n) (megtalálják a medián) + O (n) (partíció) + 2T (n / 2) (recurse balra és jobbra.) a mester tétel, ez O (n lg n) . Azonban az állandó tényező lesz nagy, és ha legrosszabb esetben a teljesítmény az elsődleges szempont, használjon merge sort helyett, amely csak egy kicsit lassabb, mint quicksort átlagosan és garantálja O (nlgn) idő (és sokkal gyorsabb lesz mint ez a béna medián quicksort).
Magyarázat a Medián a medián algoritmus