给定每个小于数组大小的元素,查找数组中的第一个重复元素
Find first duplicate element in the array given every element smaller than the array size
输入:[3,4,6,1,3,5,4]
输入是一个具有重复项的未排序数组。请注意,数组中的每个元素都小于其大小7。
输出:3,这是第一个重复的元素。
我可以很好地使用映射来找出第一个重复元素,但不知道是否有更好的解决方案,就像在所有数组元素都小于数组的问题中提到的那样。
你能帮我想出一个javascript中这个问题的最佳解决方案吗?谢谢
最快的可能是
var arr = [3,4,6,1,3,5,4];
var first, len=arr.length, i=0;
for (i; i<len; i++) {
if (arr.lastIndexOf(arr[i]) !== i) {
first = arr[i];
break;
}
}
console.log(first)
写得最短,类似
var arr = [3,4,6,1,3,5,4];
var first = arr.filter((k,i)=> i!== arr.lastIndexOf(k))[0];
console.log(first)
相关文章:
- 在函数中添加数组元素的数值
- 访问JSON对象内部的数组元素
- Mongoose-在更新中删除数组元素
- javascript数组元素是否知道其封闭数组
- 将数组元素附加到FormData dos'不适用于Firefox 15
- 如何在javascript中使用click函数选择数组元素
- 如何在JavaScript中剥离数组元素中的非整数
- 消隐数组元素是否生成自己的属性
- 如何使一个Math.random数组元素比另一个数组元素更有可能被选中
- 在Codrops的内容中添加数组元素展开缩略图网格预览
- 如何使用Jquery水平打印表中的数组元素,并在某个元素之后垂直打印
- 如何访问数组中的数组元素(JavaScript)
- 生成ACF标记位置的数组(元素列表后缺少])
- validate.js验证数组元素
- JavaScript Unshift EACH 数组元素
- 如何在加号运算符之后选择数组元素的一部分
- 访问标记图标的图像数组元素
- JavaScript 合并相同的数组元素
- 删除仅空格数组元素
- JavaScript闭包和返回数组元素