这个函数的渐近增长率是多少:
int i=3;
while(i < n) {
i *= 5;
}
我测量了它:
执行n=3
i<n
一次
。
n=16
i<n
执行2次
。
n=80
时,i<n
执行3次
。
我需要找到合适的增长率,但我被困住了。
答案 0 :(得分:1)
我相信增长率是:
3 * 5^x >= n
5^x >= n/3
因此
xlog5 >= log n - log 3
x >= (log n - log 3) / (log 5)
您可以定义3*5^x
必须是>=n
。我们可以在第一行中设置方程式。