如果我有两个数组都有 10000 个项目,现在我想将它们合并到一个数组中,所以我用 concat 来完成:
array1=array1.concat(array2);
但是有人知道运行时间是多少吗?常量还是 N?有没有更好的方法在速度方面合并它们。感谢您提供任何提示。
最佳答案
我怀疑 ECMAScript 规范是否对任何操作强制要求任何 big-oh 性能要求,因此它将依赖于实现。验证的唯一方法是编写基准测试并在目标解释器上运行它。
也就是说,我猜大多数 JavaScript 解释器将 Arrays 实现为向量类型数组而不是链表,因此 concat 操作很可能是 O(n)
在大多数引擎上。
关于javascript concat 运行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8434726/