[Teoria złożoności] Oblicz złożoność

matematolek
Użytkownik
Użytkownik
Posty: 21
Rejestracja: 11 lis 2014, o 12:38
Płeć: Mężczyzna
Lokalizacja: Czasowa
Podziękował: 11 razy

[Teoria złożoności] Oblicz złożoność

Post autor: matematolek »

Dobry wieczór
Algorytm wykonuje zadanie dla \(\displaystyle{ n=10}\) w czasie 1 sek, a zadanie \(\displaystyle{ n=100}\) w czasie 20sek.
Jaki wniosek mona wyciągnąć odnośnie złożoności czasowej tego algorytmu. Odpowiedź uzasadnij.
Mam taką treść zadania i osobiście mam problem z jego rozwiązaniem, albo nie jestem jego pewny, ze względu na słabą wiedzę z tego tematu, dlatego mam prośbę o naprowadzenie :/

Mam tutaj wzór
\(\displaystyle{ t _{n} = c \cdot T \left( n \right)}\)

Jak dobrze rozumiem to tak:
\(\displaystyle{ t_n}\) - funkcja czasu wykonywania algorytmu(można to uznać jako zależność pomiędzy liczbą operacji elementarnych wykonywanych w trakcie przebiegu algorytmu a rozmiarze danych wyjściowych?)
\(\displaystyle{ C}\) - złożoność? Nie wiem za co tutaj odpowiada to C. Rząd złożoności?
\(\displaystyle{ T(n)}\) - funkcja z argumentem rozmiaru zadania dla algorytmu?(rozmiar zadania dla algorytmu?)

No więc tak, najpierw podkładam pod wzór pierwsze dane.

\(\displaystyle{ t_{n} = c \cdot T \left( n \right)}\)
\(\displaystyle{ t_{n} = c \cdot n^{2}}\) - Nie wiem jak tutaj dojść do tego co ma być podstawione pod tą funkcję z rozmiarem zadania, wydaje mi się, że jak dane są o wielkościach 10 i 100 to N do kwadratu będzie tu najlogiczniejsze, podejrzewam, że przy innych wartościach bym się po prostu pogubił.

\(\displaystyle{ 1 = c \cdot 100}\) 1 czyli 1 sekunda, 100 czyli 10 do kwadratu.
\(\displaystyle{ c = \frac{1}{100}}\)
\(\displaystyle{ t_{n} = \frac{1}{100} \cdot 100 = 1}\)

Teraz czas na n=100;

\(\displaystyle{ t_{n} = c \cdot T \left( n \right)}\)
\(\displaystyle{ t_n = \frac{1}{100} \cdot 100^{2}}\) - 1/100 było \(\displaystyle{ c}\) z \(\displaystyle{ n=10}\).
\(\displaystyle{ t_n = \frac{1}{100} \cdot 10 000}\)
\(\displaystyle{ t_n = 100}\)

I jaką mam tutaj odpowiedź udzielić i jaki wniosek?
Że algorytm posiada złożoność czasową kwadratową? szczerze nie wiem, i nie chcę dalej brnąć bo pewnie głupoty piszę

Bardzo proszę o pomoc.
Ostatnio zmieniony 16 mar 2017, o 08:37 przez Afish, łącznie zmieniany 4 razy.
Powód: Poprawa wiadomości.
Awatar użytkownika
Cytryn
Użytkownik
Użytkownik
Posty: 405
Rejestracja: 17 wrz 2016, o 17:04
Płeć: Mężczyzna
Lokalizacja: Warszawa
Podziękował: 2 razy
Pomógł: 46 razy

[Teoria złożoności] Oblicz złożoność

Post autor: Cytryn »

To zadanie jest jak wróżenie z fusów. Gdybyś musiał wybierać z tych popularniejszych (liniowa, liniowo-logarytmiczna, wielomianowa, wykładnicza itd.), postawiłbym na tę drugą.
matematolek
Użytkownik
Użytkownik
Posty: 21
Rejestracja: 11 lis 2014, o 12:38
Płeć: Mężczyzna
Lokalizacja: Czasowa
Podziękował: 11 razy

[Teoria złożoności] Oblicz złożoność

Post autor: matematolek »

A o co w niej chodzi tak naprawdę? Żeby jeszcze raz policzyć to zadanie tylko zamiast \(\displaystyle{ n^{2}}\) dać \(\displaystyle{ n \lg n _{n}}\) ? i porównać wyniki? Mam tak zrobione w notatkach, ale nie wiem jaki z tego wniosek powinien być.
Ostatnio zmieniony 17 mar 2017, o 06:46 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
ODPOWIEDZ