假设递归公式是一个大的o(n ^ 2),同时是一个大的omega(n ^ 2)。这是否意味着递归是一个很大的Theta(n ^ 2)?
答案 0 :(得分:0)
长话短说:答案是是的,确实。见下面的证据。
尽管每个人都听说过大写符号,但让我们回想起这些符号在Introduction to Algorithms的帮助下究竟是什么意思。对于一般情况,它被称为Ο(g(n)),Ω(g(n)),Θ(g(n)),但我们会考虑你的。
Ο(n 2 )表示法定义了以下语句所拥有的函数集:存在这样的正常数< em> 0 和 n 0 0≤f(n)≤cn 2 成立所有n≥n 0 。
所以 f(n)只是来自Ο(n 2 )的函数。示例 13n , -5 , 4n 2 + 5 。所有这些都属于Ο(n 2 )。
Ω(n 2 )表示法定义了一组函数,每个函数都包含以下语句:存在这样的正常数< em> 0 和 n 0 0≤cn 2 ≤f(n)成立所有n≥n 0 。
所以 f(n)只是来自Ω(n 2 )的函数。示例 n 4 + n - 1 , 3 n , n 2 - 12 。所有这些都属于Ω(n 2 )。
Θ(n 2 )表示法定义了函数集,其中每个函数都包含以下语句:存在这样的正常量< em> c 1 , c 2 和 n 0 0≤c 1 n 2 ≤f(n)≤c 2 n 2 适用于所有n≥n 0 。
再次 f(n)只是来自Θ(n 2 )的函数。这些是其代表 n 2 / 2 + 3 , 5n 2 。
我打赌说递归公式是一个大o(n ^ 2),同时一个大欧米茄(n ^ 2)你的意思是有一个函数(让我们称之为) f (n)属于 Ω(n 2 )和Ο(n 2 )。
从Ω(n 2 )我们存在 c 1 c 1 n 2 ≤f(n)成立。从Ο(n 2 )我们存在 c 2 f(n)≤c 2 n 2 成立。因此,我们存在 c 1 和 c 2 c 1 n 2 ≤f(n)≤c 2 n 2 ,这正是Θ(n < sup> 2 )即将发布。