面试题答案
一键面试- 优化思路:
- 传统的双层循环遍历二维数组时间复杂度为 (O(n \times m)),这里 (n) 是外层数组长度,(m) 是内层数组长度。
- 可以使用
flat()
方法将二维数组降维成一维数组,然后使用reduce()
方法进行累加,这样只需要一次遍历,时间复杂度为 (O(n)),在一定程度上进行了优化。
- JavaScript 代码实现:
const arr = [[1, 2], [3, 4], [5, 6]];
const sum = arr.flat().reduce((acc, cur) => acc + cur, 0);
console.log(sum);