Как найти ОБЩИЕ ЭЛЕМЕНТЫ в двух числовых массивах?
Напиши функцию getCommonElements(array1, array2) которая получает два массива произвольной длины в параметры array1 и array2, и возвращает новый массив, состоящий из тех элементов, которые присутствуют в обоих исходных массивах.
function getCommonElements(array1, array2) {
const array = [];
for (let i = 0; i < array1.length; i += 1) {
for (let j = 0; j < array2.length; j += 1) {
if (array1[i].includes(array2[j])){
return array.push(i);
}
}
}
}
Ответы (2 шт):
Автор решения: Seona16
→ Ссылка
function getCommonElements(array1, array2) {
const array = [];
for (let i = 0; i < array1.length; i += 1) {
if (array2.includes(array1[i])){
array.push(array1[i]);
}
}
return array;
}
Автор решения: Qwertiy
→ Ссылка
С линейной асимптотикой:
function getCommonElements(a, b) {
a = new Set(a)
b = new Set(b)
var res = []
for (var x of a) {
if (b.has(x)) {
res.push(x)
}
}
return res
}
console.log(getCommonElements([1, 2, 3, 4, 4, 5, 6], [2, 4, 5, 5]))
function getCommonElements(a, b) {
b = new Set(b)
return [...new Set(a.filter(x => b.has(x)))]
}
console.log(getCommonElements([1, 2, 3, 4, 4, 5, 6], [2, 4, 5, 5]))