Zostałem uszczęśliwiony pięknym przedmiotem pt. Analiza i Złożoność Obliczeniowa Algorytmów... tylko, że niestety na studiach inżynierskich tego przedmiotu nie miałem ani ja ani moi koledzy z grupy :/
Chętnie więc przyjmę wszelką pomoc w tej kwestii - tzn. jakieś materiały (ale nie na zasadzie pierwsze lepsze znalezione w google) zrozumiałe dla kogoś kto nie miał kontaktu z tą problematyką, lub pomoc w rozwiązaniu zadań.
Dostałem też zestaw zadań i nawet nie wiem jak się za to zabrać, oto kilka przykładowych zadań ze zbioru podstawowego:
Z góry dziękuję za pomoc.
Chętnie więc przyjmę wszelką pomoc w tej kwestii - tzn. jakieś materiały (ale nie na zasadzie pierwsze lepsze znalezione w google) zrozumiałe dla kogoś kto nie miał kontaktu z tą problematyką, lub pomoc w rozwiązaniu zadań.
Dostałem też zestaw zadań i nawet nie wiem jak się za to zabrać, oto kilka przykładowych zadań ze zbioru podstawowego:
Zliczaj(n)
1 r = 0
2 for i = 1 to n - 1
3 do for j = i + 1 to n
4 do for k = 1 to j
5 do r = r + 1
6 return r
Jaka wartość zostanie zwrócona przez powyższą funkcje? Wyraź odpowiedź jako funkcję zmiennej n.Poniższy algorytm wyznacza yz, gdzie y, z e N.
Mnóż(y, z)
1 x = 0
2 while z > 0
3 do if z mod 2 = 1
4 then x = x + y
5 y = 2 · y
6 z = [z/2]
7 return x
Określ ile razy zostanie wykonane dodawanie (instrukcja w wierszu 4) w przypadku pesymistycznym.Poniższy algorytm wyznacza y^z, gdzie y e R, z e N.
Potega(y, z)
1 x = 1
2 while z > 0
3 do x = x · y
4 z = z − 1
5 return x
Określ ile razy zostanie wykonane mnożenie (instrukcja w wierszu 3) w przypadku pesymistycznym.Z góry dziękuję za pomoc.