트리, 그래프, DFS/BFS 탐색
트리, 그래프, DFS/BFS 탐색 핵심 개념 요약 비선형 자료구조인 트리와 그래프를 학습한다. 트리는 계층 구조를 표현하며, BST(이진 탐색 트리)에서 검색/삽입/삭제가 높이(h)에 비례한다. 그래프는 연결(관계)을 모델링하는 범용 구조이며, DFS(스택)와 BFS(큐)로 탐색한다. 주요 내용 1. 트리 (Tree) - 계층 구조의 ...
트리, 그래프, DFS/BFS 탐색 핵심 개념 요약 비선형 자료구조인 트리와 그래프를 학습한다. 트리는 계층 구조를 표현하며, BST(이진 탐색 트리)에서 검색/삽입/삭제가 높이(h)에 비례한다. 그래프는 연결(관계)을 모델링하는 범용 구조이며, DFS(스택)와 BFS(큐)로 탐색한다. 주요 내용 1. 트리 (Tree) - 계층 구조의 ...
스택 (Stack) 한줄 정의 LIFO(Last In, First Out) 구조의 선형 자료구조. 마지막에 삽입된 원소가 가장 먼저 삭제된다. 핵심 이해 스택의 핵심 연산은 push(삽입)와 pop(삭제)이다. peek으로 최상단 원소를 제거하지 않고 확인할 수 있다. Python에서는 리스트의 append()/pop()으로 스택을 구현한...
큐 (Queue) 한줄 정의 FIFO(First In, First Out) 구조의 선형 자료구조. 먼저 삽입된 원소가 가장 먼저 삭제된다. 핵심 이해 큐의 핵심 연산은 enqueue(뒤에 삽입)와 dequeue(앞에서 삭제)다. Python에서는 collections.deque를 사용하면 양쪽 끝 O(1) 연산이 가능하다. 리스트의 pop...
해시 (Hash) 한줄 정의 해시 함수로 키를 인덱스로 변환하여 O(1) 평균 탐색/삽입/삭제를 달성하는 자료구조. 핵심 이해 해시 테이블은 해시 함수(Hash Function)로 키(Key)를 배열 인덱스로 변환한다. 서로 다른 키가 같은 인덱스를 가리키는 해시 충돌(Collision)이 발생할 수 있으며, 개방 주소법(Open Addr...
스택/큐/해시 실습 실습 정보 주차: Week 02, Day 02 유형: Jupyter Notebook 상태: 완료 실습 목표 스택, 큐, 해시 테이블 구현 및 활용 실습. 핵심 학습 포인트 스택(LIFO) 구현과 응용 (괄호 매칭 등) 큐(FIFO) 구현과 응용 해시 테이블과 Python 딕...
스택, 큐, 해시 테이블 핵심 개념 요약 스택(LIFO)과 큐(FIFO)는 “제한된 접근 규칙을 가진 인터페이스”로서 O(1) 연산을 보장한다. 해시 테이블은 제약 조건 없이도 O(1) 삽입/검색/삭제가 가능한 가장 효율적인 자료구조이며, 파이썬에서 dict/set으로 구현된다. 주요 내용 1. 스택 (Stack) - LIFO 개...
시간복잡도 (Time Complexity) 한줄 정의 입력 크기 n에 따라 알고리즘의 실행 시간이 어떻게 증가하는지를 Big-O 표기법으로 나타낸 척도. 핵심 이해 Big-O 표기법은 최악의 경우(Worst Case) 실행 시간을 나타낸다. 상수 계수와 낮은 차수 항을 무시하고 가장 지배적인 항만 남긴다. 공간복잡도(Space Comple...
알고리즘 분석 실습 실습 정보 주차: Week 02, Day 01 유형: Jupyter Notebook 상태: 완료 실습 목표 알고리즘 분석 기초 실습. 시간복잡도 분석과 Big-O 표기법 활용. 핵심 학습 포인트 Big-O 표기법 이해 및 적용 다양한 알고리즘의 시간복잡도 비교 코드 수준에서...
Week 02 - 자료구조와 알고리즘 요약 주차 개요 컴퓨터 과학의 핵심 기초인 자료구조와 알고리즘을 체계적으로 학습한다. 알고리즘 분석(Big-O)부터 선형 자료구조(배열, 링크드 리스트, 스택, 큐, 해시), 비선형 자료구조(트리, 그래프), 재귀/탐색, 정렬 알고리즘, 문제 풀이까지 전 범위를 다룬다. 강의 노트 ...
알고리즘 분석 기초 - Big-O, 배열, 링크드 리스트 핵심 개념 요약 알고리즘이란 문제를 풀기 위한 단계적 절차이며, 효율성을 Big-O 표기법으로 측정한다. 가장 기본적인 자료구조인 배열(Array)과 링크드 리스트(Linked List)를 학습하고, 각각의 시간 복잡도를 비교한다. 주요 내용 1. 알고리즘이란? 정의: 문제...