-
Data: 2019-11-24 16:42:33
Temat: Quciksort a najmniejsza liczba odpytywań
Od: g...@g...com szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dla prostoty weźmy Haskellową implementację (pseudo) quicksorta:
qsort [] = []
qsort (h:t) = (qsort [x|x<-t, x<h]) \
++[h]++(qsort [x|x<-t, x>=h])
Jeżeli tylko
x >= y <=> ~(x < y)
i jeżeli każde wywołanie x < y daje tę samą wartość, to lewa i prawa strona listy
będzie każdorazowo malała przy kolejnych wywołaniach rekurencyjnych (bo są rozłączne,
i wyciągamy z listy jeden element, h).
Dlatego brak przechodniości operatora < nie powinna mieć wpływu na to, czy algorytm
się zakończy.
W prawdziwym quicksorcie jest lepiej, bo tam wywołujesz funkcję porównującą tylko raz
na iterację dla każdego elementu, i przerzucasz elementy na lewo i prawo od pivota.
Ale schemat rekursji jest dokładnie taki sam.
Rezultat będzie oczywiście niezdefiniowany, ale algorytm się zakończy.
Następne wpisy z tego wątku
- 24.11.19 21:50 Tomasz Konstanty Maluszycki
- 25.11.19 05:51 M.M.
- 25.11.19 16:23 Borneq
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-18 Power BANK z ładowaniem przelotowym robi PRZERWY
- 2025-01-18 Pomoc dla Filipa ;)
- 2025-01-18 znowu kradno i sie nie dzielo
- 2025-01-18 Zieloni oszuchiści
- 2025-01-18 Zielonka => Specjalista ds. public relations <=
- 2025-01-18 Warszawa => Frontend Developer (JS, React) <=
- 2025-01-18 Warszawa => Software .Net Developer <=
- 2025-01-18 Warszawa => Developer .NET (mid) <=
- 2025-01-18 Katowice => Administrator IT - Systemy Operacyjne i Wirtualizacja <=
- 2025-01-17 Zniknął list gończy za "Frogiem". Frog się nam odnalazł?
- 2025-01-17 Kto wytłumaczy "głupiemu" prezydentowi Dudzie wielką moc prawną "dekretu premiera" TUSKA? [(C)Korneluk (2025)]
- 2025-01-17 Warszawa => Inżynier oprogramowania .Net <=
- 2025-01-17 Natalia z Andrychowa
- 2025-01-17 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-01-17 Warszawa => System Architect (Java background) <=