如何识别数组中的重复值
从 JavaScript 数组中识别和检索非唯一元素的能力是一种常见的编程任务。与删除重复项不同,此过程涉及分离多次出现的值。
使用排序和迭代的最简单方法
最简单且有效的解决方案是利用排序版本数组。排序后,比较连续元素:
function findDuplicates(arr) { let sortedArr = arr.slice().sort(); let duplicates = []; for (let i = 0; i < sortedArr.length - 1; i++) { if (sortedArr[i] == sortedArr[i + 1]) { duplicates.push(sortedArr[i]); } } return duplicates; }
这种方法提供了一种有效的搜索,时间复杂度小于 O(n2),其中 n 是数组大小。
考虑示例数组 [9, 9, 111, 2, 3, 4, 4, 5, 7]:
console.log(findDuplicates([9, 9, 111, 2, 3, 4, 4, 5, 7])); // Result: [9, 4]
该函数捕获重复值,使您能够识别出现的次数,而无需检索特定索引或重复频率。
以上是如何在 JavaScript 数组中查找重复值?的详细内容。更多信息请关注PHP中文网其他相关文章!