big-o - 如何证明使用 big-O
问题描述
我目前遇到大 O 表示法的问题。我有以下我想弄清楚的问题。
我目前有公式:T(n) 是 O(f(n)),我必须用它来直接从大 O 的定义中证明 3n^2+11n+6 是 O(n^2)。
我想知道是否有人可以帮助我解决这个问题,因为我无法解决这个问题。
解决方案
我认为这可能会有所帮助:对于 n≥k,有一个常数,我们将其命名为“c”,它满足 3n^2 + 11n + 6 ≤ c∗n^2。假设我们选择 k = 1。我们知道 n^2 ≥ n^2 ≥ n ≥ 1
所以 :
3n^2 + 11n + 6 ≤ 3n^2 + 11n^2 + 6n^2 =>3n^2 + 11n + 6 ≤ 20n^2
现在,让 c = 20。=> 复杂度为 O(n2)。
推荐阅读
- mysql - 修复 json 数据意外双重编码
- android - Flutter Erorr 找不到方法 android() 用于 org.gradle.api.Project 类型的项目“:app”的参数
- anaconda - 无法在 Anaconda Navigator 中安装 Python 包
- r - 如何对 R 中的列中的值进行分组或分类?
- ionic-framework - 我如何控制 IONIC 中的呼叫弹出选项
- .net - 如何立即使用选项(通过 services.Configure<> 映射)获取我的类的对象?
- ionic-framework - 有没有办法让离子按钮并排放置,它们之间有一个角度?
- c - 如何在C中使用分数?
- python - Visual Basic 代码:终端未显示当前目录
- coq - Z_3:左反转引理