ID: 2687 Algorytmy Średnie

Źródło: Arkusze CKE

Jakie sformułowanie najlepiej oddaje złożoność obliczeniową algorytmu quicksort?

Warianty odpowiedzi

  1. A

    jest większa niż O(n2)

  2. B

    jest większa niż złożoność sortowania bąbelkowego

  3. C

    jest zawsze mniejsza niż złożoność jakiegokolwiek innego algorytmu sortowania

  4. D

    jest różna w zależności od wyboru elementu dzielącego

Wyjaśnienie

Algorytm Quicksort opiera się na wyborze tzw. pivota, czyli elementu podziału, według którego dzieli całą tablicę na dwie mniejsze części.

Wydajność tego algorytmu wprost zależy od tego, jak trafnie zostanie wybrany pivot:

  • Jeśli trafi w środek wartości, tablica dzieli się równo na pół, co daje świetną złożoność O(n log n).
  • Jeśli wybór okaże się niefortunny (np. trafimy na element najmniejszy w posortowanej tablicy), podział będzie skrajnie nierówny i złożoność spadnie do O(n²).

Dlatego właściwa odpowiedź wskazuje, że złożoność jest różna i zależy bezpośrednio od wyboru elementu dzielącego.

Sprawdź się w praktyce

Rozwiąż pełny test próbny INF.04 albo wylosuj pojedyncze pytanie na szybką powtórkę.

Podobne pytania — Algorytmy