面试题答案
一键面试const arr = [1, 2, 3, 4, 5];
arr.unshift(0);
arr.pop();
console.log(arr);
优化思路:
- 使用
unshift
方法在数组开头添加元素,其时间复杂度为O(n),因为在数组开头添加元素需要将原数组元素依次向后移动一位。相比创建新数组再拼接,这种直接在原数组操作的方式更高效。 - 使用
pop
方法在数组末尾删除元素,其时间复杂度为O(1),因为删除数组末尾元素不需要移动其他元素,直接修改数组长度即可。这两个方法结合,以较为高效的方式实现了题目要求。