[Teoria złożoności] Wylicz złożoność algorytmu

Awatar użytkownika
pawlo392
Użytkownik
Użytkownik
Posty: 1085
Rejestracja: 19 sty 2015, o 18:10
Płeć: Mężczyzna
Lokalizacja: Jasło/Kraków
Podziękował: 270 razy
Pomógł: 34 razy

[Teoria złożoności] Wylicz złożoność algorytmu

Post autor: pawlo392 »

W jaki sposób oblicza się złożoność obliczeniową algorytmu?
Proszę o wytłumaczenie na prostym przykładzie, np :

Kod: Zaznacz cały

for i <--  -1 to 1
  do for j <--  -n to n 
   do if i*j>0
      then wypisz "coś"
Ostatnio zmieniony 21 cze 2017, o 06:20 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
Pakro
Użytkownik
Użytkownik
Posty: 137
Rejestracja: 7 maja 2017, o 15:47
Płeć: Mężczyzna
Lokalizacja: Katowice
Podziękował: 7 razy
Pomógł: 36 razy

Re: [Teoria złożoności] Wylicz złożoność algorytmu

Post autor: Pakro »

Moim zdaniem:
- pierwsza petla nie zależy od \(\displaystyle{ n}\) i powtarza sie \(\displaystyle{ 3}\) razy,
- druga jest zalezna od \(\displaystyle{ n}\) i jest wykonywa \(\displaystyle{ 2n+1}\) razy (mnożeń i porównań robi tyle samo).
Razem wychodzi \(\displaystyle{ 3(2n+1)}\) porównań (mnożeń) . Czyli wychodzi, ze złożoność to \(\displaystyle{ \theta(n)}\).
ODPOWIEDZ