new Set(); JavaScript의 Set은 중복을 허용하지 않는 요소들의 집합입니다. 각 요소는 집합 내에서 단 한 번만 나타납니다. Set을 사용하면, 배열이나 다른 유형의 데이터 구조에서 중복 항목을 쉽게 제거할 수 있습니다. Set 생성 Set은 'new' 키워드를 사용하여 생성합니다. let mySet = new Set(); 이 코드는 빈 Set을 생성합니다. Set은 배열 또는 다른 이터러블 객체를 인수로 사용하여 초기화할 수도 있습니다. let mySet = new Set([1, 2, 3, 4, 5]); Set에 원소 추가 add() 메소드를 사용하여 Set에 원소를 추가할 수 있습니다. mySet.add(6); 이 코드는 6을 Set에 추가합니다. Set에서 원소 제거 delete()..
직접 값을 설정하는 초기화 이 방법은 배열의 원소를 직접 설정하여 초기화하는 가장 간단하고 직관적인 방법입니다. // 직접 값을 설정하는 초기화 let arr = [8, 1, 4, 5, 7]; 위 코드에서는 배열 arr를 생성하고 각 원소에 직접 값을 설정했습니다. 이 경우, 배열의 길이는 직접 설정한 원소의 수와 같습니다. new Array()와 fill()을 사용한 초기화 new Array(n)는 길이가 n인 새로운 배열을 생성합니다. 이때, 배열의 각 원소는 undefined로 초기화됩니다. fill(value) 메소드를 이용하면 배열의 모든 원소를 특정 값으로 초기화할 수 있습니다. 예를 들어, //길이가 5이고 모든 원소의 값이 0인 배열 초기화 let arr = new Array(5).fill..
Array.prototype.reduce() JavaScript의 `reduce()` 메소드는 배열의 모든 요소를 각각 한 번씩 실행하는 함수입니다. 이 함수는 네 가지 인수를 취합니다. 첫 번째와 두 번째 인수는 누산기와 현재 값이며, 세 번째 인수는 현재 인덱스, 네 번째 인수는 원본 배열입니다. 기본 사용법 arr.reduce(callback( accumulator, currentValue, [, index[, array]] )[, initialValue]) accumulator는 누산기입니다. 이전 단계의 callback 함수 호출에서 반환한 값이며, 이 값은 callback의 첫 번째 인수로 제공됩니다 currentValue는 배열에서 처리중인 현재 요소입니다. index와 array는 선택적인..
시간 복잡도 특정 알고리즘이 문제를 해결하는 데 필요한 컴퓨터 자원 중 하나인 '시간'을 측정하는 방법입니다. 알고리즘의 시간 복잡도는 입력의 크기에 대한 알고리즘의 실행 시간을 나타냅니다. 이를 표기하는 데에는 대게 Big O 표기법이 사용됩니다. 시간 복잡도 의미 O(1) 상수 시간(constant tiem) O(logN) 로그 시간(log time) O(N) 선형시간(linear time) O(NlogN) 로그 선형 시간(log-linear time) O(N^2) 이차 시간(quadratic time) O(N^3) 삼차 시간(cubic time) O(2^N) 지수 시간(exponential time) O(1): 상수 시간(constant time) 상수 시간 복잡도를 가지는 알고리즘은 입력 크기에 ..