logo

Set을 사용하는 배열

Set의 사용

일반 배열을 사용한 방식의 차이는 중복된 요소를 어떻게 처리하는가이다.

let setArr = new Set(['a','b','c','d','a'])

console.log(setArr)
// 출력: Set(4) { 'a', 'b', 'c', 'd' }
  • Set은 중복을 허용하지 않는 데이터 구조이다.
  • 즉, Set에 같은 값을 여러 번 추가하려고 해도, 중복된 값은 하나만 유지된다.
  • Set을 배열로 변환하려면 Array.from()을 사용 할 수 있다.
let report = ["muzi frodo", "apeach frodo", "frodo neo", "muzi neo", "muzi frodo"];
let uniqueReports = new Set(report);

console.log(uniqueReports); 
// 출력: Set(4) { 'muzi frodo', 'apeach frodo', 'frodo neo', 'muzi neo' }

Set의 특징

읽는 시간 1분

순열(Permutation)

순열은 고등학교 수학 때 배우는 개념이다.

그때는 무작정 공식만 외웠기 때문에, 순열이 무엇인지, 언제 쓰이는지 몰랐다.(어릴때 공부를 잘못했던 이유인듯 …)

순열이란?

순열(Permutation)은 집합에 속한 모든 원소의 순서를 고려하여 배열하는 것을 의미합니다.

즉, 주어진 n개의 원소를 모두 사용하여 만들 수 있는 가능한 모든 순서의 조합을 말합니다.

순열의 특징

  • 순열은 순서가 중요합니다. 즉, {1, 2, 3}과 {3, 2, 1}은 서로 다른 순열로 취급됩니다.
  • n개의 원소로 만들 수 있는 순열의 개수는 n! (n 팩토리얼)로 계산됩니다. 예를 들어, 3개의 원소가 있을 때 순열의 개수는 3! = 3 × 2 × 1 = 6개입니다.

순열의 활용

읽는 시간 1분

Array.at과 Array[idx]의 차이

Array.at(idx)es2022부터 등장한 메소드이다.

기존 방식의 Array[idx]과 어떤 차이가 있는지 알아보자.

차이

가장 극명한 차이는 음수 인덱스 지원에 있다.

const arr = [10, 20, 30]
console.log(arr[-1]) // undefined

const arr = [10, 20, 30]
console.log(arr.at(-1)) // 30
읽는 시간 1분