code-analysis - 是否有任何工具可以确定对 Big-O 复杂性执行代码分析?

标签 code-analysis big-o time-complexity

我没有看到任何东西,我怀疑定义“n”有困难,因为对于分析复杂的函数,通常需要定义的变量不止一两个。

有圈复杂度的分析工具,但有时间(和/或空间)复杂度的分析工具吗?如果是,是哪些,如果不是,为什么不呢?它不可行吗?不可能?只是有人没有解决它?

理想情况下,应用程序(定义不同的可能的“n”)以及应用程序中的每个方法都会有类似的整体复杂性

编辑:因此,由于 Halting Problem,似乎不可能有确切的解决方案。然而,某种启发式近似可能吗?我意识到出于实际目的,一个好的分析器会提供更多有用的信息,但这似乎是一个有趣的问题。

另外,如何计算某个程序子集?

最佳答案

不幸的是,这个问题叫做 Halting problem ...

关于code-analysis - 是否有任何工具可以确定对 Big-O 复杂性执行代码分析?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/635893/

相关文章:

prolog - ISO Prolog 谓词的复杂性

c++ - 遗留 C/C++ 代码分析工具

big-o - 无法找到此循环的大 O 时间

time-complexity - 这个 for 循环的复杂度是多少,for (int j = i; j < n; j++)?

java - 具有特殊情况的循环的时间复杂度 (theta)

computer-science - 自动计算终止算法的算法时间复杂度

algorithm - O(E) 最短路径

c# - Visual Studio 中的变量命名约定是否有任何可以在开发时强制执行的规则?

.net - CA1034 : Nested types should not be visible

parsing - 使用ANTLR分析和修改源代码;我做错了吗?