如何辨識陣列中的重複值
從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中文網其他相關文章!