算法速度顺序

标签 algorithm performance big-o performance-estimation

有时我完全被愚弄了试图用 O(x) 表示法估计算法的速度,我的意思是,我真的可以指出顺序是 O(n) 还是 O(mxn),但对于那些是 O (lg(n)) 或 O(C(power n)) 我想我在那里遗漏了一些东西...... 那么,您有哪些技巧可以通过快速忽略算法来轻松估算?

作为我正在寻找的示例,这里有一些简单的示例(可能是错误的,但已尽力而为):

  • O(n):如果有一个从1到n的简单循环(或者几个,但没有嵌套。
  • O(mxn):嵌套在另一个循环内,限制为 m 和 n。

提前致谢。

最佳答案

递归、分而治之的算法通常是 O(logN)。循环分而治之的算法将是 O(NlogN)。

关于算法速度顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/532274/

相关文章:

c - Zig-zag 迭代数组 - 速度优化

c - 曼哈顿距离高估了,让我发疯

algorithm - 调度算法

PHP 性能指标

performance - Redis - 如果集合中有超过 x 个成员,则删除/弹出

algorithm - 如果 n > 3,求关系 T (n) =T (n-1)+T(n-2)+T(n-3) 的时间复杂度

algorithm - 近似价格

html - 将社交媒体 "like"和 "+1"按钮添加到您的站点的最有效方法是什么?

c++ - 以下排序算法是否为O(n)?

algorithm - 如何证明从最小节点开始在BST中找到n-1次后继是O(n)?