algorithm - 时间复杂度

标签 algorithm big-o time-complexity

嗨 我有一个问题:

考虑我有T(n) = m * n^2 (n<m) T(n) = O(m) 这样写对吗?因为我写了T(n) = m*n*n所以因为n<m我们有T(n) = O(m) 谢谢

最佳答案

不,你能做的最好的事情就是写T(n,m) = O(m^3) . n < m是一个非常弱的条件,基本上只给你 n in O(m) .例如,n 可以始终为 m-1 .

编辑:我的第一个答案是不准确的,因为 T 只是 n 中的一个函数。如果 m 是常量,答案仍然成立,但 O(m^3) 等于 O(1)。

关于algorithm - 时间复杂度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4398986/

相关文章:

java - if 语句的大 O 表示法?

c++ - 代码理解问题

c# - 递归树搜索

algorithm - 如何知道 Big O 何时是对数的?

c - 嵌套循环的 Big-O 复杂度

python - 如何提高这段代码的性能?

algorithm - 二和算法复杂度

pointers - 使用链表实现的 Stack ADT 的时间复杂度

c# - 在 C# 中寻找用于超大型项目的文本文件搜索算法

c++ - 是否有 c++ std 解决方案来过滤和减少而不创建拷贝?