渐近记号
来源:互联网 发布:excel每隔n列取数据 编辑:程序博客网 时间:2024/05/02 02:05
渐近记号:用来表示算法的渐近运行时间的记号,用定义域为自然数集N={0,1,2,...}的函数来定义。
Θ(g(n))={f(n):存在正常数c1,c2和n0,使对所有的n>=n0,有0<=c1g(n)<=f(n)<=c2g(n) } (在集合表示法中,“:”应读作“满足......的特性”)
Θ(g(n))是一个集合,所以f(n)=Θ(g(n))就表示f(n)是Θ(g(n))的元素。对所有的n>=n0,f(n)在一个常因子范围内与g(n)相等,我们说g(n)是f(n)的一个渐近确界。
渐进上界O:只给出渐近上界
O(g(n))={f(n):存在正常数c和n0,使对所有n>=n0,有0<=f(n)<=cg(n) }
为表示一个函数f(n)是集合O(g(n))的一个元素,记f(n)=O(g(n))。注意,f(n)=Θ(g(n))隐含着f(n)=O(g(n)),Θ记号强于O记号。
渐进下界Ω:只给出渐近下界
Ω(g(n))={f(n):存在正常数c和n0,使对所有n>=n0,有0<=cg(n)<=f(n) }
a)Θ记号限制一个函数在常数因子内。如果存在正常数n0,c1和c2使得在n0右边f(n)的值永远在c1g(n)与c2g(n)之间,那么可以写成f(n)=Θ(g(n))。
b)O记号给出一个函数在常数因子内的上限。如果存在正常数n0和c使得在n0右边f(n)的值永远等于或小于cg(n),那么可以写成f(n)=O(g(n))。
c)Ω记号给出一个函数在常数因子内的下限。如果存在正常数n0和c使得在n0右边f(n)的值永远等于或大于cg(n),那么可以写成f(n)=Ω(g(n)。非渐近紧确的上界o
其中,O记号所提供的渐进上界可能是也可能不是渐进紧确的。我们使用o记号表示非渐近紧确的上界:
o(g(n))={f(n):对任意正常数c,存在常数n0>0,使对所有的n>=n0,有0<=f(n)<=cg(n) }
非渐近紧确的下界ω
ω记号与Ω记号的关系就好像o记号与O记号的关系一样。我们用ω记号来表示非渐近紧确的下界:
ω(g(n))={f(n):对任意正常数c,存在常数n0>0,使对所有的n>=n0,有0<=cg(n)<f(n) }
或者另一种定义为
f(n)∈ω(g(n))当且仅当g(n)∈o(f(n))
- 渐近记号
- 渐近记号
- 渐近记号
- 渐近记号总结
- 渐近记号总结
- 算法里面的渐近记号
- 算法导论------渐近记号Θ、Ο、o、Ω、ω详解
- 算法导论------渐近记号Θ、Ο、o、Ω、ω详解
- 算法导论------渐近记号Θ、Ο、o、Ω、ω详解
- 记号
- 记号
- 记号
- 记号
- 记号
- 记号
- 记号
- 记号
- 婚期渐近
- 数组和指针
- c语言变态语法一
- mfc CDialog使用方法
- C#中的变量作用域
- 使用OpenCV和C++实现的分水岭算法(Watershed)
- 渐近记号
- iPhone 聊天气泡
- Web1.0、Web2.0、Web3.0对比分析
- 比较避孕套、安全期、避孕药、体外排精的避孕方法效果
- Lua 5.2 参考手册(一)
- UPMS通用用户权限系统中如何对外部系统接入配置
- MyBatis中JdbcType问题
- 执行dumpbin.exe报错 cannot find LINK.exe
- 【OpenCV】有关内存释放的一些问题