在大O或Omega符号中,我知道n是指程序的输入。但变量C是什么意思?
虽然不知道你在哪里看到了大 O 表示法中的 C
,但我猜它被用来表示某种常数。
例如,你可以在将使用 Big-O 表示法的语句翻译为使用谓词逻辑术语的语句时使用 C
:
f(x) = O(g(x))
的意思是:存在正实数
C
和x0
,使得对于所有x >= x0
,都有f(x) <= C * g(x)
这里使用 C
作为常数倍数的名称完全是任意的。 C
可能之所以流行,仅仅因为它是 "constant" 的第一个字母。最多,这只是一种惯例。
M
(尽管C
在页面下方的一些方程中也出现)。很可能你在某个大O符号的描述中看到了C
,但随后又阅读了其他不使用C
的描述。C
没有实际意义;它是任意的。通常许多不同的 C
值都可以工作。大 O 表示法的重点在于您不需要关心常数倍数。如果您需要精确计算操作次数,而不仅仅是渐近界限,则不应使用大 O 表示法。 - Blckknght
C
?它是如何被使用的? - Some programmer dude