算法导论 3-4 证明与反驳
(渐进记号的性质)假设f(n)和g(n)为渐近正函数。证明或反驳下面的每个猜测。
a. f(n)=O(g(n))蕴含g(n)=O(f(n))。
b. f(n)+g(n)=θ(min(f(n), g(n))。
c. f(n)=O(g(n))蕴含lg(f(n))=O(lg(g(n))),其中对所有足够大的n,有
且
。
d. f(n)=O(g(n))蕴含
。
e. f(n)=
。
f. f(n)=O(g(n))蕴含g(n)=Ω(f(n))。
g. f(n)=
。
h. f(n)+o(f(n))=
。
解答:
a. f(n)=O(g(n))蕴含g(n)=O(f(n))。 错误。
举例 ,
。
b. f(n)+g(n)=θ(min(f(n), g(n))。错误。
举例,
,
c. f(n)=O(g(n))蕴含lg(f(n))=O(lg(g(n))),其中对所有足够大的n,有
且
。正确。
根据O定义:
O(g(n)) = { f(n): 存在正常量c和,使得对所有
,有
}
由不等式可得
。
d. f(n)=O(g(n))蕴含
。正确。
根据O定义:
O(g(n)) = { f(n): 存在正常量c和,使得对所有
,有
}
由不等式可得
e. f(n)=
。错误。
举反例,取,则
。已知n>0时,
。所以命题e不成立。
f. f(n)=O(g(n))蕴含g(n)=Ω(f(n))。
从O的定义来分析该问题,O定义如下:
O(g(n)) = { f(n): 存在正常量c和,使得对所有
,有
}
Ω(g(n)) = { f(n): 存在正常量c和,使得对所有
,有
}
g. f(n)=
。错误。
举反例。取,则
,由于
,所以命题不成立。
h. f(n)+o(f(n))=
。正确。
根据o的定义,我们可以得到
存在正常量c和,使得对于所有
,有
,
另外,由于,可得
。
因此我们可以得到
,因此符合θ函数的定义。故命题成立。
算法导论 3-4 证明与反驳相关推荐
- 算法导论主定理证明(3)
章节4.6.1引理4.3的第一句就不证了,因为比较简单. 这里是最后一部分的证明,即算法导论4.6.2---向下取整和向上取整部分. 呼~到这里为止终于把这个定理证完了! 仔细用mathtype码证明 ...
- 算法导论之图的基本算法
图是一种数据结构,有关图的算法是计算机科学中基础性的算法.这个论述恰如其分. 图的基本算法包括图的表示方法和图的搜索方法.图的搜索技术是图算法领域的核心,有序地沿着图的边访问所有顶点,可以发现图的结构 ...
- 算法导论——A*算法易懂的证明
算法导论--A*算法易懂的证明 前言 A* 证明 证明采用反证法,课上老师讲解不够清晰,课后自己下了点功夫,明白了A * 算法的原理. 前言 A*算法,其核心思想在于f(n)和Best-First.其 ...
- 《算法导论》读书笔记--第三章 函数的增长
好长时间了,继续算法导论. 当输入规模足够大时,并不计算精确的运行时间,倍增常量和低阶项被舍去.我们要研究的是算法的渐近效率,即在输入规模无限量时,在极限中,算法的运行时间如何随着输入规模的变大而增加 ...
- 《算法导论》读书笔记(七)
<算法导论>读书笔记之第16章 贪心算法-活动选择问题 前言:贪心算法也是用来解决最优化问题,将一个问题分成子问题,在现在子问题最优解的时,选择当前看起来是最优的解,期望通过所做的局部最优 ...
- 算法导论之单源最短路径
单源最短路径,在现实中是很多应用的,是图的经典应用,比如在地图中找出两个点之间的最短距离.最小运费等.单源最短路径的问题:已知图G=(V,E),找出给定源顶点s∈V到每个顶点v∈V的最短路径.单源最短 ...
- 算法导论之图的最小生成树
引出最小生成树,是提到电子线路设计时,要把数个元件的引脚连接在一起,使其电位相同.使n个引脚互相连通,可以使用n-1条连接线,每条连接线连接两个引脚.寻求连接线最少的方案,是最小生成树的应用.将电子线 ...
- 算法导论之贪心算法(Huffman编码和拟阵)
贪心算法,在解决最优化问题上,通过得到子问题的局部最优解来合成问题的一个解,以局部最优选择来输出一个全局最优解. 问题要用贪心算法来求解,需满足和动态规划一样的最优子结构特征,同时还需要再每个子问题最 ...
- 算法导论5:基数排序和计数排序 2016.1.5
今天的这个比较神奇,是一个线性复杂度的排序算法O(n),算法导论在这一部分先证明了比较排序的复杂度下界是nlgn,所以基数排序不是基于比较的排序. 其实这种比较方法我们应该都接触过.假设输入的数都是三 ...
最新文章
- 半平面交比较好的博客
- c#中反射技术在Unity中的运用
- python是什么时候发布的_python发布日期
- python字符集_Python任意字符集转换
- 昨天是欧洲男人的,今天却属于亚洲女人
- 右边菜单_AI基础教程65:使用文字菜单编辑文字(七)查找字体
- [UE4] Pawn 移动时没有碰撞的解决办法:使用 AddActorWorldOffset 并勾选 Sweep
- CSS学习之外边距合并
- Ubuntu 16.04 安裝chrome
- 恢复Cisco路由器密码
- python lambda函数介绍
- 软件质量管理-复习总结
- [秩相关] Spearman秩相关系数计算及假设检验
- PyQt上位机软件开发简介
- ESXi 5.5 安装Emulex光纤卡驱动
- mysql执行sql流程_mysql 执行sql流程
- 一季度出货量暴跌22%,小米手机已“师老兵疲”
- 【6-2】hbase shell
- 前端面试八股文(详细版)—上
- Crosstalk高速信号质量测试仪
热门文章
- 由于策略,导致磁盘处于脱机状态解决办法
- python读取网络摄像头的帧_python实现从本地摄像头和网络摄像头截取图片功能
- Python网络爬虫入门篇---小白必看
- 数字滤波器与数据微分
- Pwnable.kr
- MATLAB学习笔记 表示与描述
- 本周AI热点回顾:机器人写稿同样拥有著作权、大脑中竟存在“分布强化学习”
- 信息学奥赛一本通(1168:大整数加法)
- matlab 洛朗展开,将函数在圆环内展开成洛朗级数
- ANSYS apdl命令流笔记11------载荷(F命令)与约束(D命令)的区别