Скажем, у меня есть следующий алгоритм:
for(int i = 1; i < N; i *= 3) {
sum++
}
Мне нужно вычислить сложность, используя тильду-нотацию, что в основном означает, что я должен найти тильду-функцию, чтобы, когда я делю сложность алгоритма на эту тильду-функцию, предел в бесконечности должен быть 1.
Я не думаю, что есть необходимость вычислять точную сложность, мы можем игнорировать константы, и тогда у нас будет тильда-сложность.
Глядя на рост индекса, я предполагаю, что этот алгоритм
~ log N
Но вместо того, чтобы иметь двоичную логарифмическую функцию, основание в этом случае равно 3. Имеет ли это значение для точной записи? Является ли порядок роста точно таким же и, следовательно, можем ли мы игнорировать базу при использовании тильда-нотации? Правильно ли я подхожу к этому?