当前位置:网站首页>第三章-函数的增长-3.1-渐近记号
第三章-函数的增长-3.1-渐近记号
2022-08-02 14:21:00 【学编程的Jerry】
引入:渐近记号的引入是用来刻画算法的运行时间。
一、Θ记号
1、概念
书上原话:
如何理解?
存在正 常量c1、c2,使当n足够大的时候,f(n)可以被夹在c1*g(n)和c2*g(n)之间,则称f(n) ∈ θ(g(n)),但是我们通常会表示为f(n) = θ(g(n)),如图,
在n > n0时,因为f(n)一直被夹在c1g(n)和c2g(n)之间,f(n)在一个常量因子内等于g(n),因此我们称g(n)为f(n)的一个渐近紧确界(asymptotically tight bound)。
2、要求
θ(g(n))的定义要求每个成员f(n) ∈ θ(g(n))均渐近非负,即f(n)非负(渐近正函数就是对所有足够大的n均为正的函数)。
3、举个例子
我们要证明
同除n^2得:
可得c2>=1/2,当no >= 7时,c1<=1/14,因此得证。
二、O记号
1、概念
如何理解?相当于半个θ,只是用于描述上界,下界为0
2、应用
往往用于描述算法的最坏情况。
三、Ω记号
1、概念
如何理解?
相当于半个θ,只是用于描述下界。
2、应用
往往用于描述算法的最好情况。
三、o记号
1、概念:
如何理解?
o记号和之前O记号定义类似,但主要的区别是在f(n)=O(g(n))中, 界0<=f(n)<=cg(n)对某个常量c成立,但是在f(n)=o(g(n))中, 界0<=f(n)<cg(n)对所有常量c>0成立,直观来看,当n无限大的时候,情况如下
四、ω记号
1、概念
如何理解?
f(n)=ω(g(n))中
五、一些性质
1、传递性:
2、自反性
3、对称性
4、转置对称性
5、类比,将函数之间比较类比于实数之间的比较
边栏推荐
猜你喜欢
搭建Spark开发环境
小知识系列:Fork之后如何与原仓库分支同步
网络运维系列:GoDaddy Shell DDNS配置
lammps学习(一)单晶硅纳米磨削
2021 Huawei Cup Mathematical Modeling Contest E question - Ultra-Wideband (UWB) precise positioning problem under signal interference
【面经】被虐了之后,我翻烂了equals源码,总结如下
2022-7-15 第五组 瞒春 学习笔记
为什么四个字节的float表示的范围比八个字节的long表示的范围要广
2021年华为杯数学建模竞赛E题——信号干扰下的超宽带(UWB)精确定位问题
2022-0801 第六小组 瞒春 学习笔记
随机推荐
类加载过程
【SVM回归预测】基于LibSVM实现多特征数据的预测
DOM —— 事件代理
对象和类总结
【TCP 和 UDP 基本原理】
这几年让你大呼惊人的AI应用,都离不开这项技术
一、QT界面开发 --QT安装
DOM - Event Object
为什么四个字节的float表示的范围比八个字节的long要广
在命令行或者pycharm安装库时出现:ModuleNotFoundError: No module named ‘pip‘ 解决方法
IDEA如何进行远程Debug
JS中的数组方法和循环
有效的括号【暴力、分支判断、哈希表】
Spark的概念、特点、应用场景
初识art-template模板引擎
DOM - page rendering process
2022-02-14 第五小组 瞒春 学习笔记
【频域分析】频谱泄露、频率分辨率、栅栏效应
Scala的模式匹配与样例类
scroll、offset、client事件的用法及区别