• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Algorytm quicksort

0 głosów
865 wizyt
pytanie zadane 23 kwietnia 2020 w C i C++ przez Rrafał98 Nowicjusz (240 p.)

Mam pewne pytanie.

Znalazłem w internecie taki schemat sortowania przez scalanie. Otóż zastanawiam się czy quicksort wykorzystuje scalanie dwóch ciągów uporządkowanych. W quicksort występuje "dzielenie" problemu na mniejsze. Ale czy quicksort wykorzystuje scalanie posortowanych ciągów?

1 odpowiedź

+1 głos
odpowiedź 23 kwietnia 2020 przez Whistleroosh Maniak (57,400 p.)
Quicksort podobnie jak merge sort rozbija tablicę na coraz mniejsze części, lecz nie wykonuje on potem scalania. Jak zapewne wiesz, quicksort działa tak, że znajdujesz sobie pivot i względem niego sortujesz pewną część tablicy i potem znowu powtarzasz to rekurencyjnie dla części na prawo od pivota i na lewo. Musisz zauważyć, że gdy skończymy rozważać jakiś pivot, to będzie się on już znajdował na swojej właściwej pozycji w posortowanym ciągu. Czyli jak rozważymy każdy element jako pivot to nie ma już potrzeby scalać tego wszystkiego.

Podobne pytania

0 głosów
1 odpowiedź 784 wizyt
pytanie zadane 6 stycznia 2021 w Python przez maciej12 Nowicjusz (120 p.)
0 głosów
1 odpowiedź 5,139 wizyt
+1 głos
1 odpowiedź 373 wizyt
pytanie zadane 27 czerwca 2020 w C i C++ przez Marcinuq Użytkownik (690 p.)

93,742 zapytań

142,678 odpowiedzi

323,297 komentarzy

63,326 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...