Javascript 차집합, 교집합, 배타논리적 합

Javascript 차집합, 교집합, 배타논리적 합

filter와 includes 함수를 이용해서 차집합, 교집합, 배타논리적 합을 구해보자!

차집합

img

A-B = B를 제외한 A만 남겨야 함

const arr1 = [1,2,3]
const arr2 = [3,4,5]

const result = arr1.filter(x => !arr2.includes(x)) //[1,2]

교집합

img

A와 B의 공통 부분만 남김

const arr1 = [1,2,3]
const arr2 = [3,4,5]

const result = arr1.filter(x => arr2.includes(x)) //[3]

배타 논리적 합

img

const arr1 = [1,2,3]
const arr2 = [3,4,5]

const result = arr1
.filter(x => !arr2.includes(x))
.concat(arr2.filter(x => !arr1.includes(x))); // [1,2,4,5]

배타 논리적 합의 접근 방법은 A-B의 차집합 concat B-A의 차집합 으로 이루어진다.