尋找 JavaScript 中兩個文字陣列之間的缺失數字
問題
我們需要編寫一個 JavaScript 函式,它需要兩個陣列 arr1 和 arr2。
arr2 是 arr1 的一個打亂後的重複副本,僅缺少一個元素。
我們的函式應找到並返回該元素。
示例
以下為程式碼 −
const arr1 = [6, 1, 3, 6, 8, 2];
const arr2 = [3, 6, 6, 1, 2];
const findMissing = (arr1 = [], arr2 = []) => {
const obj = {};
for (let i = 0; i < arr1.length; i++) {
if (obj[arr1[i]] === undefined) {
obj[arr1[i]] = 1;
} else {
obj[arr1[i]]++;
};
}
for (let i = 0; i < arr2.length; i++) {
if (obj[arr2[i]] === undefined || obj[arr2[i]]-- === 0) {
return arr2[i];
}
}
for (key in obj) {
if (obj[key] > 0) {
return Number(key);
}
}
return -1;
};
console.log(findMissing(arr1, arr2));輸出
控制檯輸出如下 −
8
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP