首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >算法分析,大O符号作业

算法分析,大O符号作业
EN

Stack Overflow用户
提问于 2010-01-23 01:12:56
回答 2查看 760关注 0票数 1

嗨,有人能给我解释一下如何解决这个作业吗?(n + log )3^n= O((4^n)/n)。我认为这与解决这个不等式是一样的:(n + log )3^n< c((4^n)/n))。

提前感谢

EN

回答 2

Stack Overflow用户

发布于 2010-01-23 01:18:00

你需要找到一个c(正如你在你的问题中提到的),并且你需要证明对于大于某个k的所有n,这个不等式都成立。

通过展示你可以找到有问题的c和k,然后by definition,你已经证明了大O的界限。

相反,如果你找不到这样的c和k,这是因为左边的函数并不是右边的函数的上界。然而,这里不应该是这种情况(当你能确切地说出原因时,你会知道你对渐近增长/边界有了更直观的理解)。

票数 1
EN

Stack Overflow用户

发布于 2010-01-23 01:21:36

根据definition,如果存在一个常数M,使得每n个都有f(n) = O(g(n)),那么|f(n)| < M|g(n)|就是真的。在计算机科学中,数字是非负的,所以这相当于找到一个M,使得f(n) / g(n) < M

反过来,这可以通过证明随着n增加到无穷大(根据极限的定义) f(n) / g(n)有一个有限的极限来完成。在你的(n^2 + n log n) * (3/4)^n中,由于指数函数是如何工作的,这一点非常明显。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2119040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档