Zadanie 1.
Niech ![]()
opisuje złożoność pewnego algorytmu. Jeżeli ten algorytm wykonuje zadanie X o rozmiarze 6 w czasie 18 sekund na komputerze K, to ile czasu potrzebuje na wykonanie zadania Y, trzy razy większego niż zadanie X, także na komputerze K?
Złożoność algorytmu dla danych rozmiaru n określona jest przez funkcję ![]()
. Dla zadania X rozmiaru 6 algorytm ten wykona ![]()
operacji dominujących. Czas potrzebny do wykonania tego zadania na komputerze K wynosi 18 sekund. Zatem wykonanie pojedynczej operacji dominującej zajmuje ![]()
sekundy. Dla zadania Y rozmiaru ![]()
rozważany algorytm wymaga wykonania dokładnie ![]()
operacji dominujących. Komputer K upora się z tym zadaniem w ciągu ![]()
sekund.
Zadanie 2.
Na komputerze K wykonanie algorytmu A dla danych o rozmiarze 6 zajmuje 8 sekund. Złożoność tego algorytmu opisuje funkcja ![]()
.
Ile czasu będzie potrzebował komputer K1, dokładnie 1024 razy szybszy od komputera K, do wykonania algorytmu A dla danych rozmiaru 20?
![]()
sekund
Zadanie 3.
Niech ![]()
opisuje złożoność pewnego algorytmu. Jeżeli ten algorytm wykonuje zadanie X o rozmiarze 6 w czasie 18 sekund na komputerze K.
Ile czasu zajmie wykonanie zadania Y (trzy razy większego niż X) na komputerze K1, dziesięć razy wolniejszym niż komputer K?
Czas wykonania pojedynczej operacji dominującej na komputerze K wynosi ![]()
sekundy. Komputer K1 dziesięć razy wolniejszy od K potrzebuje na wykonanie tego samego zadania dokładnie ![]()
sekundy. Zatem zadanie Y wymagające 5832 operacji dominujących zostanie zakończone na komputerze K1 po ![]()
sekundach.
Zadanie 4.
Podaj możliwie najlepsze oszacowanie następującej funkcji stosując notację O:
Funkcja |
Oszacowanie |
|
|
|
|
|
|
|
|
|
|
Zadanie 5.
Podaj możliwie proste oszacowanie następującej funkcji stosując notację Θ:
Funkcja |
Oszacowanie |
|
|
|
|
|
|
|
|
|
|