algorithm - 算法的复杂度是多少 : T (n) = 3 * T (n ÷ b) + n² + 1?

标签 algorithm math time-complexity complexity-theory recurrence

算法的复杂度是多少:T (n) = 3 * T (n ÷ b) + n² + 1? 问一个问题

一个

你能帮我知道复杂度是多少:T (n) = 3 * T (n ÷ b) + n² + 1。当 n> 1 时?。

自从我必须做一个学校演示来解决这个问题以来,我一直试图了解一些计算算法复杂度的主要方法,但我一直没能很好地解决它。如果你能给我建议,我会非常重视。

谢谢!

最佳答案

如果b等于1,master的临界系数未定义,不满足正则性条件。在这种情况下,T(n) 根本无法明确定义,也没有任何合理的解决方案。

如果b等于2,master定理的临界系数为log_2(3),n^log_2(3) = O(n^2)...同样,因为此时T(n)满足正则性,Master定理告诉我们这里的复杂度是 O(n^2)。

事实上,对于任何大于 2 的 b,上述分析也适用:对于大于 1 的整数 b,log_b(3) 总是小于 2。对于任何这样的选择,都会满足规律性,所以我们总是在Master 定理的情况 3 并有 T(n) = O(n^2)。

关于algorithm - 算法的复杂度是多少 : T (n) = 3 * T (n ÷ b) + n² + 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55214366/

相关文章:

javascript - 如何在 javascript 中的圆周上生成随机点

arrays - 查找代码的时间复杂度

ruby - 矩阵时间复杂度分析中最长的增长路径

algorithm - 具有自动更新变量的语言

arrays - 找到将所有 K 数转换为位于 [L,R] 范围内所需的操作数的最佳方法(即 L≤x≤R)

c - 在循环中填充数组

math - AABB 与圆 - 反之亦然,使用分离轴定理

math - 计算弧在空间中的边界坐标的公式

c# - C# 中 foreach() 的复杂性。网

algorithm - 超过 500 万个向量的 KMeans 聚类