javascript - 如何在 JavaScript 中自动计算算法的时间复杂度?

标签 javascript ecmascript-6 time-complexity big-o

JavaScript 中是否有用于计算算法时间复杂度的 inbuild 方法?

例如,如果我输入此函数:

function solution(A) {
    let smallestInt = 1;

    function existsInArray(val) {
        return A.find((a) => a === val);
    }

    for (let index = smallestInt; index < 1000000; index++) {
        if (existsInArray(index) && !existsInArray(index + 1) &&
            existsInArray(smallestInt)) {
            smallestInt = index + 1
        }
    }
    return smallestInt;
}

该方法应该能够告诉我算法的时间复杂度是O(N*2)或者哪个正确答案是?

如果没有可用的内置方法,是否有具有自动化方法的库可以实现此目的?

最佳答案

没有。这样的程序可以解决 halting problem 。这是不可能的。

关于javascript - 如何在 JavaScript 中自动计算算法的时间复杂度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61549023/

相关文章:

javascript - vue gallery 添加加载微调器

javascript - 有没有更短/更有效的方法来使用 javascript 中的传播运算符来更新键的值?

algorithm - 合并大小为 n 的 k 个排序数组的下界

javascript - 将单击的图像保存在 var 中并将其设置为随后显示的新 div 的背景 - 如何?

javascript - 我应该总是在 JavaScript 的所有函数中返回 promise 吗?

javascript - 未捕获的类型错误 : Illegal invocation javascript

javascript - 我可以在 nodejs 应用程序中使用 es6 样式模块导入吗

python - Scipy 稀疏矩阵 - 仅对非零元素进行逐元素乘法和除法

algorithm - 为什么广度优先搜索有两个列出的时间复杂度?

javascript - javascript 中 instanceof 运算符的混淆行为