Когда вы изменяете основание логарифма, результирующее выражение отличается только постоянным множителем, который, по определению записи Big-O , подразумевает, что обе функции принадлежат одному и тому же классу в отношении их асимптотического поведения.
Например
где
C=1
log10n=log2nlog210=Clog2n
.
C=1log210
Таким образом, и log 2 n отличаются константой C , и, следовательно, оба являются истинными:
log 10 n - это O ( log 2 n ), log 2 n - это O ( log 10 n ).
В общем случае log a n - это O ( log b n ) для натуральных чисел a и b больше 1.log10nlog2nC
log10n is O(log2n)
log2n is O(log10n)
loganO(logbn)ab
Еще один интересный факт с логарифмическими функциями является то , что в то время как при постоянном , п к НЕ О ( п ) , но войти н к является O ( журнал N ) , поскольку журнал п к = K лог н , который отличается от бревна п только константы фактор к .k>1nkO(n)lognkO(logn)lognk=klognlognk