Big O class for (1/2)^n



函数(1/2)^n属于哪个大0类?

在纯粹的数学基础上,似乎我们必须把它放入O(1)中,因为对于任何足够大的n, 1/2^n趋于0。

然而,当涉及到渐近分析和大0时,我们倾向于做很多手势,也会参考公式。1/2在技术上是一个常数,所以看起来会落入O(c^n)。

我倾向于O(c^n),因为在讨论算法时,说"半个操作"是没有意义的。当输入变大时什么算法只需要一半的时间?充其量,我看到数学公式(1/2)^n指的是某个时间常数的一半,比如一分钟。所以(30秒)n变成了一个很大的数函数显然属于O(c^n)

一点帮助?

0.5函数<一口> n O (1) ,和 O (c)对任何 c> 0 (而不是 O (0) , 0.5以来<一口> n > 0 n )。

也是 0 (1)(注意小0)

对于任意常数c,它不是Θ(c)。如果c =0,问题是0.5n>c 对于任何n。对于任意c> 0lim n →∞ 0.5 <一口> n> .


我个人认为,说它是Θ(0.5n)是这里最强烈和最准确的表述。

你不能写一个O(1/2^N)的算法,因为当N接近无穷小时,运行时间将变得无穷小,这在物理上是不可能的。你不能有少于一个"操作"。

最新更新