Dla podanego algorytmu złożoność obliczeniowa jest równa
Dla podanego algorytmu złożoność obliczeniowa jest równa
Wyjaśnienie i uzasadnienie dydaktyczne
Poprawna odpowiedź: B
Uzasadnienie i szersze wyjaśnienie:
Przedstawiony algorytm to wyszukiwanie liniowe (sekwencyjne). Jego działanie polega na przechodzeniu przez tablicę element po elemencie (krok K4: i <- i + 1) i porównywaniu każdego z nich z szukaną wartością x.
Złożoność obliczeniowa opisuje, jak czas wykonania algorytmu zależy od rozmiaru danych wejściowych, w tym przypadku od liczby elementów w tablicy, czyli n. W najgorszym przypadku (gdy szukany element znajduje się na końcu tablicy lub w ogóle go w niej nie ma), algorytm musi przejrzeć wszystkie n elementów. Oznacza to, że liczba operacji jest wprost proporcjonalna do n, co w notacji Wielkiego O zapisujemy jako O(n).
Dlaczego pozostałe odpowiedzi są nieprawidłowe?
- A. O(n log n): Jest to złożoność typowa dla wydajnych algorytmów sortowania, takich jak sortowanie przez scalanie.
- C. O(1): Złożoność stała; oznaczałaby, że czas wykonania nie zależy od rozmiaru tablicy (np. dostęp do pierwszego elementu).
- D. O(n²): Złożoność kwadratowa; charakterystyczna dla algorytmów z zagnieżdżonymi pętlami przechodzącymi przez te same dane (np. proste sortowanie bąbelkowe).
Chcesz poćwiczyć całą kwalifikację INF.04?
Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.
Pojęcia z tego pytania
- Sortowanie przez scalanie (Merge Sort)Stabilny algorytm sortowania dzielący tablicę na połowy, sortujący je rekurencyjnie i scalający dwa posortowane ciągi w czasie O(n log n).
- Pojęcie i Cechy AlgorytmuUporządkowany, skończony i jednoznaczny ciąg instrukcji i kroków postępowania prowadzący do rozwiązania określonego problemu obliczeniowego dla poprawnych danych wejściowych.
- Złożoność obliczeniowa (Big O Notation)Formalna miara efektywności algorytmu określająca zapotrzebowanie na czas procesora lub pamięć w funkcji rozmiaru danych wejściowych (n).
Podobne pytania z działu „Zlozonosc obliczeniowa i efektywnosc”
Ten sam obszar materiału z kwalifikacji INF.04. W całej bazie znajdziesz 4 pytań z tego działu.
- #163
Programista chce dobrać najszybciej działający algorytm przetwarzania danych w swojej aplikacji. Na podstawie przedstawionej w tabeli złożoności obliczeniowej, należy wybrać algorytm numer
- #597
Algorytm polega na dwukrotnym wykonaniu prostych operacji na każdym elemencie tablicy. Złożoność obliczeniowa takiego problemu to:
- #769
Jaka jest złożoność obliczeniowa (w notacji Wielkiego O) przedstawionej metody
processDataw zależności od rozmiaru tablicyn(gdzien = array.length)?