스택 Last In First Out 스택의 ADT 연산 시 해야 할 동작과 상태가 가지고 있어야 할 값을 정의하고 있기는 하지만 세부 구현 내용은 정의하고 있지 않음 문제 1 재귀가 없는 일반적인 상황을 가정해 봅시다. 함수 A가 함수 B를 호출하고, 함수 B가 함

INNER JOIN(내부 조인)은 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야 한다.OUTER JOIN(외부 조인)은 두 테이블을 조인할 때, 1개의 테이블에만 데이터가 있어도 결과가 나온다.CROSS JOIN(상호 조인)은 한쪽 테이블의 모
정규식(Regular Expression)은 문자열에서 특정 패턴을 찾거나 검사할 때 사용하는 문법이다.기본 형태예→ 문자열에서 "abc" 찾기→ 문자열에서 "a" 찾기→ "a" 또는 "b" 또는 "c"예예→ \[0-9]와 동일→ \[A-Za-z0-9\_]예→ "a",
DFS알고리즘은 스택(Stack) 자료 구조나 재귀를 통해서 구현할 수 있다.한 분기를 탐색한 후, 다음 분기로 넘어가기 전에 해당 분기를 완벽하게 탐색한다.더 이상 탐색이 불가능한 상태가 되면 이전 분기로 돌아와 다음 분기를 탐색한다.모든 정점을 방문한 후, 탐색을
키(key)를 통해 값을 빠르게 찾는 자료구조배열: 인덱스로 접근 → O(1)해시: 키로 접근 → O(1)👉 핵심: 탐색 없이 바로 접근 가능👉 코테에서는 Map 사용 추천👉 반복되면 시간초과 발생👉 반복문 안에서 사용하면:배열은 탐색, 해시는 즉시 조회
반복문 중첩 경계선 기억하기N이 100,000 이상이면 O(n²) 절대 안 됨이중 for문 짜기 전에 "N이 얼마지?" 먼저 확인하는 습관정렬 + 투포인터 / 슬라이딩 윈도우 패턴을 익혀두면 O(n²)을 O(n)으로 줄이는 상황이 많아요.문제 풀고 제출 전에 이것만 체
유클리드 호제법은 두 수의 최대공약수(GCD)를 빠르게 구하는 방법이다. 핵심은 “큰 수를 작은 수로 나눈 나머지로 계속 바꿔가면 된다”는 것 하나다.두 수 a, b (a > b)에 대해gcd(a, b) = gcd(b, a % b)즉, 큰 수를 작은 수로 나눈 나머지로
하나의 큰 문제를 작은 문제로 나누어 해결하고 그 결과를 저장해두었다가 재 사용하는 알고리즘 기법이다.부분 문제로 분할 : 원래 문제를 더 작은, 같은 형태의 문제로 쪼갤 수 있음결과 저장 : 한 번 계산한 건 다시 계산하지 않음같은 계산을 반복하지 않기 위해서대표적
코테에서 이런 입력이 주어질 때:js const edges = \[1,2, 2,4, 3,4]; 👉 의미: 노드 간 연결 정보 (간선)
최종적으로 적용할 CSS 속성들을 결정할 때, 계단식 폭포처럼 CSS 규칙을 순서에 따라 합쳐서 적용하는 것우선순위가 높은 규칙일수록 우선적으로 속성을 적용한다.스타일 요소는 각각 우선순위를 가지고 있는데 이 우선순위가 가장 높은 스타일이 적용되게 된다.스타일 우선순위

의미론적인 태그라는 뜻.태그에 의미를 부여함으로써 웹사이트의 구조를 파악하기 쉽도록 도와줌<header> : 페이지의 머리글<footer> : 문서나 특정 섹션의 푸터를 정의할 때 사용<address> : 사이트 제작자 정보, 연락처 정보<main
Q : 사용자가 브라우저 font-size를 변경하였을 때, 이에 대응해서 웹 화면의 요소가 크거나 작아지도록 하려면 어떻게 스타일링 하면 좋을까요?웹 페이지에 절대 단위 px를 사용할 경우 사용자의 브라우저 font-size 변경을 반영할 수 없다.따라서 이를 반영하
static, relative, absolute, fixed, sticky 가 있다.position의 기본 값, 원래 있어야 할 위치인 HTML에 작성된 순서 그대로 브라우저 화면에 표시됨요소의 원래 위치를 기준으로 상대적으로 배치됨요소의 원래 자리는 그대로 차지하고

현재 branch에서 다른 branch를 합칠 때 사용한다.3가지의 종류가 있다.일반적으로 가장 많이 사용하는 merge 방법, 커밋 이력을 모두 남길 때 사용한다.모든 커밋과 분기했던 branch 히스토리가 남는다.git merge에는 -ff옵션이 기본으로 설정되어

main 또는 master 브랜치와 development 브랜치를 유지하면서 용도에 따라 임시적으로 feature, release, hotfix 브랜치를 생성해서 사용하는 방식의 전략브랜치 별로 약속된 역할에 맞게 생성하여 사용하게 된다.각 브랜치를 통해 규칙에 맞는
==은 느슨한 같음(loose equality)으로 두 값이 같은지 비교한다.두 값을 공통 형(type)으로 암묵적으로 변환.암묵적 변환은 서로 다른 타입이면 Number 타입으로 변환하고 최종 같음 비교는 ===처럼 수행된다.===은 엄격한 샅음(strict equa

자바스크립트에서 값을 복사할 때, 자료형에 따라 복사하는 값이 달라진다.기본형에는 Number, String, Boolean, Null, Undefined, Symbol이 있고, 데이터 변경이 불가(immutable)하다.변수에 기본형을 할당하면 새로운 메모리 공간에
한 스코프에서 같은 변수를 let이나 const로 두 번 선언하면 에러가 발생한다.var는 변수의 중복 선언을 허용한다. var로 같은 변수를 여러 번 중복으로 선언할 수 있지만 이미 선언된 변수에 var를 사용하면 두 번째 선언문은 무시된다.함수를 기준으로만 적용되는
한 스코프에서 같은 변수를 let이나 const로 두 번 선언하면 에러가 발생한다.var는 변수의 중복 선언을 허용한다. var로 같은 변수를 여러 번 중복으로 선언할 수 있지만 이미 선언된 변수에 var를 사용하면 두 번째 선언문은 무시된다.함수를 기준으로만 적용되는

웹 페이지, 이미지, 비디오 등의 콘텐츠를 수신, 전송 및 표현하는 소프트웨어.인터넷에 접속하기 위해 사용하는 Chrome, Safari, Edge, Firefox 등이 브라우저이다.1\. 사용자 인터페이스: 주소 표시줄, 각종 버튼(이전/다음, 새로고침, 설정, 닫기

자식 요소에서 부모 요소로 이벤트가 전파되는 것을 이벤트 버블링이라고 한다.기본적으로 이벤트 버블링이 일어나고 이를 막으려면 이벤트 객체에서 stopPropagation 메서드로 전파를 막을 수 있다.부모 요소에서 자식 요소로 이벤트가 전파되는 것을 이벤트 캡쳐링이라고
자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기 참조 변수자바스크립트에서 this는 호출방식에 따라서 동적으로 결정된다.함수 또는 메소드를 호출한 대상에 실제 함수를 연결해주는 것자바스크립트에서 this는 어떤 환경에서 사용하는지에 따라 this에 바이딩
스코프란 식별자(변수, 함수 이름과 같이 어떤 대상을 다른 대상과 구분하여 식별할 수 있는 유일한 이름) 접근ㄴ 규칙에 따른 유효 범위를 뜻한다.렉시컬 스코프란 식별자 유효 범위가 함수를 호출할 때 결정되는 것이 아닌, 선언할 때 결정되는 것을 뜻한다.정적 스코프라고도
클라이언트가 웹 서버에게 사용자 리퀘스트의 목적이나 종류를 알리는 수단이다.: 데이터를 받기 위해 사용하는 메소드리퀘스트 바디는 사용하지 않고 쿼리 스트링을 사용한다.불필요한 리퀘스트를 제한하기 위해 리퀘스트가 캐시될 수 있다.서버의 데이터 변경이 일어나지 않는다.멱등