Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptの2つの配列のisSubset


2つのリテラル配列を受け取るJavaScript関数を作成する必要があります。関数は、これらのことを念頭に置いて、2番目の配列が最初の配列のサブセットであるかどうかを判断する必要があります-

  • 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

  1. 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>   &

  2. 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>   &