Per prima cosa devi capire cosa significa per una funzione f (n) essere O (g (n)).
La definizione formale è: * Una funzione f (n) è detta O (g (n)) iff | f (n) | <= C * | g (n) | ogni volta che n> k, dove C e k sono costanti. *
quindi sia f (n) = logaritmo in base a di n, dove a> 1 eg (n) = logaritmo in base b di n, dove b> 1
NOTA: Ciò significa che i valori aeb potrebbero essere qualsiasi valore maggiore di 1, ad esempio a = 100 eb = 3
Ora otteniamo quanto segue: log in base a di n si dice O (logaritmo in base b di n) iff | log in base a di n | <= C * | logaritmo in base b di n | ogni volta che n> k
Scegli k = 0 e C = logaritmo in base a di b.
Ora la nostra equazione è la seguente: | logaritmo in base a di n | <= logaritmo in base a di b * | logaritmo in base b di n | ogni volta che n> 0
Notare il lato destro, possiamo manipolare l'equazione: = logaritmo in base a di b * | logaritmo in base b di n | = | logaritmo in base b di n | * logaritmo in base a di b = | logaritmo in base a di b ^ (logaritmo in base b di n) | = | logaritmo in base a di n |
Ora la nostra equazione è la seguente: | logaritmo in base a di n | <= | logaritmo in base a di n | ogni volta che n> 0
L'equazione è sempre vera indipendentemente da quali siano i valori n, b o a, oltre alle loro restrizioni a, b> 1 e n> 0. Quindi la base logaritmica a di n è O (base logaritmica b di n) e poiché a, b non ha importanza possiamo semplicemente ometterli.
Puoi vedere un video di YouTube su di esso qui: https://www.youtube.com/watch?v=MY-VCrQCaVw
Puoi leggere un articolo su di esso qui: https://medium.com/@randerson112358/omitting-bases-in-logs-in-big-o-a619a46740ca
log n
, intende il logaritmo naturale. 2. Quando un informatico scrivelog n
, intende la base due. 3. Quando un ingegnere scrivelog n
, intende in base dieci. Di solito sono vere.