Ответы:
Это зависит от того, где находится логарифм. Если это просто фактор, то это не имеет значения, потому что big-O или позволяет вам умножить на любую константу.
Если вы берете то база важна. В базе 2 у вас будет только , в базе 10 - около .
Поскольку асимптотические обозначения не учитывают постоянные множители, а любые два логарифма отличаются постоянным множителем, основание не имеет значения: для всех . Таким образом, нет необходимости указывать основание логарифма при использовании асимптотической записи.
As и , поэтому
В большинстве случаев безопасно отбрасывать основание логарифма, потому что, как указывали другие ответы, формула изменения базиса для логарифмов означает, что все логарифмы являются постоянными, кратными друг другу.
В некоторых случаях это небезопасно. Например, @ gnasher729 указал, что если у вас есть логарифм в показателе степени, то логарифмическое основание действительно значимо.
Я хотел указать на другой случай, когда основание логарифма является значительным, и это случаи, когда основание логарифма напрямую зависит от параметра, указанного в качестве входного значения для задачи. Например, алгоритм сортировки по основанию работает, выписывая числа в некоторой базеразложение входных чисел на их базовыецифры, затем с помощью сортировки подсчета, чтобы отсортировать эти числа по одной цифре за раз. Работа за раунд и есть примерно раунды (где максимальное входное целое число), поэтому общее время выполнения . For any fixed integer this simplifies to . However, what happens if isn't a constant? A clever technique is to pick , in which case the runtime simplifies to . Since = , the overall expression simplifies to . Notice that, in this case, the base of the logarithm is indeed significant because it isn't a constant with respect to the input size. There are other algorithms that have similar runtimes (an old analysis of disjoint-set forests ended up with a term of somewhere, for example), in which case dropping the log base would interfere with the runtime analysis.
Another case in which the log base matters is one in which there's some externally-tunable parameter to the algorithm that control the logarithmic base. A great example of this is the B-tree, which requires some external parameter . The height of a B-tree of order is , where the base of the logarithm is significant in that is not a constant.
To summarize, in the case where you have a logarithm with a constant base, you can usually (subject to exceptions like what @gnasher729 has pointed out) drop the base of the logarithm. But when the base of the logarithm depends on some parameter to the algorithm, it's usually not safe to do so.