次のアルゴリズムがあるとします。
for(int i = 1; i < N; i *= 3) {
sum++
}
チルダ表記を使用して複雑さを計算する必要があります。これは基本的に、チルダ関数を見つけて、アルゴリズムの複雑さをこのチルダ関数で割ったときに無限大の限界が 1 になるようにする必要があることを意味します。
正確な複雑さを計算する必要はないと思います。定数を無視して、チルダの複雑さを得ることができます。
インデックスからの伸びを見ると、このアルゴリズムは
~ log N
しかし、2 進対数関数を使用するのではなく、この場合の底は 3 です。これは正確な表記に関係しますか? 成長の順序はまったく同じなので、チルダ表記を使用するときに基数を無視できますか? これに正しくアプローチできますか?