JavaScriptの2つの配列のisSubset
-
array1のすべての値はarray2で定義する必要があります
-
array1に重複する値が存在する場合は、array2でも考慮に入れる必要があります。
たとえば、arr1 =["a"、"a"]およびarr2=["b"、 "a"]の場合、 "a"は最初に2回表示されますが、2番目に1回だけ表示されるため、isSubsetはfalseです。
>例
このためのコードは-
になりますconst isSubset = (arr1, arr2) => {
const count = (arr, ind) => {
let i = arr.length;
while (i−−) hash[arr[i]] = (hash[arr[i]] || 0) + ind;
}
const hash = {};
let i, keys;
count(arr1, 1);
count(arr2, −1);
keys = Object.keys(hash);
i = keys.length;
while (i−−) {
if (hash[keys[i]]){
return false;
};
};
return true;
}
console.log(isSubset(["B", "A", "C", "A"], ["A", "B", "C", "A"]));
console.log(isSubset(["B", "A", "C", "A"], ["A", "B", "C", "D"])); 出力
そして、コンソールの出力は-
になりますtrue false
-
JavaScriptで2つの配列を結合する方法は?
以下は、JavaScriptで2つの配列を結合するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> &
-
JavaScriptで2つの配列を乗算する方法は?
以下は、JavaScriptで2つの配列を乗算するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> &