2016-09-28 51 views
1

在大O或Omega符号中,我知道n是指程序的输入。但是,变量C指的是什么?什么是变量'C'是指大O或欧米茄符号

+0

你能把它放在上下文中吗?你在哪里看到“C”?它是如何使用的? –

+0

我正在阅读大O符号的材料,我发现这个片段.. ** f(n)= c g(n)**其中n是程序的输入。 – javapsy

回答

1

虽然很难回答这个问题,但不知道你在哪里看到了大O表示法的讨论,所以我怀疑它被用来表示某种常量。

例如,你可以使用C在翻译用大O符号的语句中使用谓词逻辑术语声明:

f(x) = O(g(x))表示:

存在正实数Cx0,这样对于所有x >= x0,f(x) <= C * g(x)

选择C这里的常数倍数的名称完全是任意的。 C可能很受欢迎,因为它是“恒定”的第一个字母。至多,这是一个惯例。

你可以使用一些其他的字母,其含义是相同的。关于该主题的Wikipedia page(当时我正在写这篇文章)在其大部分方程中使用M(尽管C潜入其中的一些页面中)。完全有可能你在一个大O符号的描述中看到了C,但是随后读了一些根本不使用C的描述。

+0

所以我可以假设常量'C'表示像向变量添加值那样的常量操作的数量。 – javapsy

+0

不,对'C'没有任何实际意义;它是任意的。通常会有许多不同的“C”值。大O符号的意义在于,您不需要关心恒定倍数。如果你需要一个精确的操作数,而不仅仅是一个渐近界,你不应该使用大O符号。 – Blckknght