Zestawy rozmówBlog

Twoja wymarzona praca? Lets Git IT.
Interaktywna platforma przygotowująca do rozmów technicznych dla nowoczesnych programistów.

XGitHub

Platforma

  • Kategorie

Zasoby

  • Blog
  • O aplikacji
  • FAQ
  • Sugestie

Prawne

  • Polityka prywatności
  • Regulamin

© 2026 LetsGit.IT. Wszelkie prawa zastrzeżone.

LetsGit.IT/Kategorie/Algorytmy
Algorytmyeasy

Co opisuje notacja Big-O?

Tagi
#big-o#complexity#performance
Wróć do kategoriiPrzejdź do quizu

Odpowiedź

Big-O opisuje, jak rośnie czas lub pamięć wraz z rozmiarem danych n (tempo wzrostu). Pozwala porównywać algorytmy niezależnie od sprzętu.

Odpowiedź zaawansowana

Głębiej

Big-O to asymptotyczne ograniczenie z góry, opisujące jak rośnie zasób (czas/pamięć), gdy rośnie rozmiar wejścia.

Ważne niuanse:

  • Ignoruje stałe i składniki niższego rzędu, żeby porównać skalowanie.
  • Trzeba doprecyzować przypadek: worst-case, average-case, amortized.
  • Big-O to górne ograniczenie; Θ to ścisłe; Ω to dolne.

Przykłady

  • Sortowanie O(n log n) skaluje się dużo lepiej niż O(n^2) przy dużych n.
  • Dwa algorytmy O(n) mogą różnić się mocno przez stałe i dostęp do pamięci.

Typowe pułapki

  • Traktowanie Big-O jako dokładnego czasu.
  • Zakładanie, że to samo Big-O = ta sama szybkość.
  • Pomijanie pamięci (często to ona jest bottleneckiem).

Powiązane pytania

Algorytmy
Heap sort: jaka jest złożoność czasowa, pamięciowa i stabilność?
#heapsort#sorting#complexity
Algorytmy
Quickselect: do czego służy i jaka jest jego oczekiwana złożoność?
#quickselect#selection#partition
Algorytmy
Bitmask DP (subset DP): co to jest i jaka jest typowa złożoność?
#dp#bitmask#subset
Algorytmy
Co to jest kolejka monotoniczna i jak daje max w oknie w O(n)?
#deque#monotonic-queue#sliding-window
Algorytmy
Sliding window: co to jest i kiedy jest lepsze niż zagnieżdżone pętle?
#sliding-window#two-pointers#complexity
Algorytmy
Counting sort: kiedy może być szybszy niż sortowanie O(n log n)?
#counting-sort#sorting#stability