스택(stack) 데이터 컬렉션을 처리하는 데 사용되는 추상 데이터 유형(ADT)입니다. 자료구조에 대해 말하면 스택은 컴퓨터과학에서 매우 중요한 부분입니다. 스택은 특정한 규칙에 따라 항목들을 추가하거나 제거하는 리스트와 유사합니다. 이러한 규칙은 후입선출(LIFO, Last In First Out)입니다. 즉, 가장 마지막에 스택에 추가된 항목이 가장 먼저 제거됩니다. 스택의 핵심 연산은 다음과 같습니다: push: 스택의 맨 위에 항목을 추가합니다. pop: 스택의 맨 위에 있는 항목을 제거하고 반환합니다. peek/top: 스택의 맨 위에 있는 항목을 조회합니다. 스택에서 항목을 제거하지는 않습니다. isEmpty: 스택이 비어 있는지 확인합니다. class Stack { constructor()..
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는 선택적인..