W książce algorytmy randomizowane , Motwani i Raghavan otworzyć zapoznaniu się z opisem ich funkcji RandQS - randomizowane Quicksort - przy czym czop, służy do podziału zbioru na dwie części, jest wybierana losowo.
Przez jakiś czas dręczyłem nad tym (co prawda trochę słabe) mózgi, ale nie byłem w stanie zobaczyć, jaką przewagę ma ten algorytm nad prostym wybieraniem, powiedzmy, środkowego elementu (indeks, a nie rozmiar) za każdym razem.
Przypuszczam, że nie widzę tego: jeśli początkowy zestaw jest w losowej kolejności, jaka jest różnica między wybieraniem elementu w losowej lokalizacji w zestawie a wybieraniem elementu w ustalonej pozycji?
Czy ktoś może mnie oświecić w dość prosty sposób?
źródło
Jak zauważył Jernej, założenie, że wszystkie permutacje danych wejściowych są jednakowo prawdopodobne, nie zawsze jest prawdziwe. Pierwszym pomysłem może być permutacja tablicy wejściowej. To by działało, ale łatwiej jest przeanalizować sytuację, w której oś jest wybierana losowo. Jest to również znane jako losowe próbkowanie .
źródło