我对大O,大Omega和大Theta表示法之间的区别感到困惑。
我知道大O是上限,大Omega是下限,但是大Ө(theta)究竟代表什么?
我已经读到这意味着 严格限制 ,但这意味着什么?
这意味着该算法在给定函数中既是big-O又是big-Omega。
例如,如果为Ө(n),则存在一个常数k,例如您的函数(运行时,无论什么)大于n*k要足够大的函数n,而存在另外一些常数,K例如您的函数要小于n*K足够大的函数n。
Ө(n)
k
n*k
n
K
n*K
换句话说,对于足够大的值n,它夹在两个线性函数之间:
对于k < K和n足够大,n*k < f(n) < n*K
k < K
n*k < f(n) < n*K