Algorithm 14 : isSubsetOf


説明:


2つの配列(base、sample)を入力して、サンプルがbaseのサブセットであるかどうかを返します.

let base = [1, 2, 3, 4, 5];
let sample = [1, 3];
let output = isSubsetOf(base, sample);
console.log(output); // --> true

sample = [6, 7];
output = isSubsetOf(base, sample);
console.log(output); // --> false

base = [10, 99, 123, 7];
sample = [11, 100, 99, 123];
output = isSubsetOf(base, sample);
console.log(output); // --> false

の意見を打診


sampleの要素がbaseの要素と一致する場合はtrueを返します.異なる要素がある場合は、文を離れてfalseを返すべきだと考えられます.したがって,二重複文+条件文を用いた.

に答える

const isSubsetOf = function (base, sample) {
  // TODO: 여기에 코드를 작성합니다.
  for (let i = 0; i < sample.length; i++) {
    for (let j = 0; j < base.length; j++) {
      if (sample[i] === base[j]) {
        return true
      }
    }
  }
  return false
}

心得


現在の問題は時間複雑度O(MN)の解である.
今より改善したO(Nlogn)のレポートを見てもわかりません
時間の複雑さから勉強したほうがいい.