大O表示法的计算过程

今天学了下大O算法但是不是很明白是一些计算的式子不是程序说是f(n)=O(g(n))当且仅当存在正值常数c和n0,使得对所有n>=n0,有f(n)<=c*g(n).例如:... 今天学了下大O算法 但是不是很明白 是一些计算的式子不是程序
说是f(n)=O(g(n)) 当且仅当存在正值常数c和n0,使得对所有n>=n0,有f(n)<=c*g(n).
例如:
1. 5n+4=O(n), 因为对所有n>=4, 5n+4<=6n
2. 6*2^n+n^2=O(2^n),因为对所有n>=4, 6*2^n+n^2<=7*2^n
3. 3n+2不等于O(1),因为不存在正值常数c和n0,使得对所有n>=n0,3n+2<=c

里面的c和n0是怎么算出来的? 而1和3差不多 那为什么两个的原因却不同?
请教下大侠们~ 谢谢 ~~
展开
 我来答
湛蓝之炎
2009-01-12 · TA获得超过245个赞
知道答主
回答量:52
采纳率:0%
帮助的人:66.5万
展开全部
1和3本来就一样么..居然还有这么恶心的公式..
c和n0是随便找的,只要能找到就行
最简单的判断复杂度的方法就是:对于任何表达式,先合并同类项,然后取含n的最高阶的项,去掉常数
比如2中,n的最高阶的项就是6*2^n,去掉常数就是2^n
一般地,排序算法最快是O(nlog2(n)),折半查找是O(log2(n))
增栗斩q
推荐于2016-04-14 · TA获得超过1万个赞
知道小有建树答主
回答量:1953
采纳率:62%
帮助的人:176万
展开全部
1和3本来就一样么..居然还有这么恶心的公式..
c和n0是随便找的,只要能找到就行
最简单的判断复杂度的方法就是:对于任何表达式,先合并同类项,然后取含n的最高阶的项,去掉常数
比如2中,n的最高阶的项就是6*2^n,去掉常数就是2^n
一般地,排序算法最快是O(nlog2(n)),折半查找是O(log2(n))
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lxd19970709
2009-01-14 · TA获得超过406个赞
知道答主
回答量:48
采纳率:0%
帮助的人:0
展开全部
莪乜吥倁檤
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xinxingcao520
2009-01-12 · TA获得超过394个赞
知道小有建树答主
回答量:210
采纳率:0%
帮助的人:101万
展开全部
8
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式