Originariamente inviato da valder
Salve ragazzi,sono ad un punto morto con un esercizio/argomento del corso di algoritmi. Purtroppo la prof al momento non può ricevere,ne nessun compagno di corso mi sa fornire delucidazioni chiare sull argomento.
Come si fa a calcolare,date due funzioni,se sono O(g(n)) o viceversa?
Questo è il testo dell esercizio.
-Siano date le seguenti funzioni
Dire se ognuna è O grande dell'altra. In caso affermativo, mostrare una coppia (n0, c), altrimenti fornire una motivazione.
10x^4 se x<100
f(x) = x se x>=100 e quadrato perfetto
4x altrimenti
12x^3 se x multiplo di 5
g(x) =
3x+2 altrimenti
Io cerco di ragionare cosi. Considero dapprima i casi peggiori della f(x),cioè x e 4x...questi li confronto con tutti e due i casi della g(x) ..e quindi x O(12x^3) e O(3x)...idem per 4x...stesso procedimento svolgo per la g(x),che viene confrontata solo con il secondo e terzo caso della f(x),perchè,il primo,essendo per le x<100,non è rilevante.
Procedo nella maniera corretta?
Qualcosa da tener sott'occhio?
Grazie