본문/내용
1. 4장 스택 요점정리 (수업시간 요점 정리 내용)
스택은 컴퓨터 과학에서 중요한 자료 구조 중 하나로, LIFO(Last In First Out) 원칙을 따른다. 즉, 가장 나중에 들어온 데이터가 가장 먼저 나간다는 의미이다. 스택은 일상적인 예로는 접시를 쌓아 놓은 것과 비슷하다. 가장 마지막에 추가한 접시가 가장 먼저 제거되는 구조를 가지고 있다. 스택의 기본적인 연산으로는 푸시(push), 팝(pop), 피크(peek)가 있다. 푸시는 스택의 최상단에 데이터를 추가하는 연산이며, 팝은 스택의 최상단 데이터를 제거하고 반환하는 연산이다. 피크는 스택의 최상단 데이터를 제거하지 않고 반환하는 연산이다. 이러한 연산들은 스택이 고유의 구조를 유지하도록 도와준다. 스택은 애플리케이션에서 다양한 용도로 사용된다. 예를 들어 함수 호출 시의 프로세스 스택, 괄호의 유효성 검증, 깊이 우선 탐색(DFS) 알고리즘 등에서 스택이 폭넓게 활용된다. 함수 호출 시, 각 함수의 지역 변수와 반환 주소를 저장하기 위해 스택이 사용된다. 이 때문에 스택의 오버플로우가 발생할 수 있으며, 이는 메모리의 한계로 인해 스택에 더 이상 데이터를 추가할 수 없는 상태를 의미한다. 이는 …