【发布时间】:2015-04-15 12:35:51
【问题描述】:
游戏很简单:一个程序必须“猜测”一些给定的 n,使得 1
示例伪代码:
n = a // we assign some positive integer value to n
N = b // we assign some positive integer value to N
check loop
{
if rng(N) = n
print some success message
exit program
else
back to the beginning of the check loop
}
好的,我对如何确定该算法的时间复杂度(尤其是上限)感兴趣?我有点困惑。概率方面如何影响这一点?如果我理解正确,最坏的情况(理论上)是程序永远运行?
【问题讨论】:
-
如果我理解正确,代码只是每次随机猜测(可能重复猜测)?
-
如果计算机可以重复,那么它肯定可以永远运行(尽管这是一个小概率事件)。
标签: time-complexity probability