스택
스택은 삽입과 삭제 연산이 후입 선출로 이뤄지는 자료구조입니다. 후입 선출은 삽입과 삭제가 한 쪽에서만 일어나는 특징이 있습니다.
깊이 우선 탐색과 관련이 있다.
- 스택 용어
- 위치
- 연산
- push: top 위치에 새로운 데이터를 삽입하는 연산이다.
- pop: top 위치에 현재 있는 데이터를 삭제하고 확인하는 연산이다.
- peek: top 위치에 현재 있는 데이터를 단순 확인하는 연산이다.
큐
큐는 삽입과 삭제 연산이 선입선출로 이루어지는 자료구조입니다. 스택과 다르게 먼저 들어온 데이터가 먼저 나갑니다. 따라서 삽입과 삭제가 양방향에서 이루어집니다.
너비 우선 탐색과 관련이 있다.
- 큐 용어
- rear: 큐에서 가장 끝 데이터를 가리키는 영역이다.
- front: 큐에서 가장 앞에 데이터를 가리키는 영역이다.
- add: rear 부분에 새로운 데이터를 삽입하는 연산이다.
- poll: front 부분에 있는 데이터를 삭제하고 확인하는 연산이다.
- peek: 큐의 맨 앞에 있는 데이터를 확인할 때 사용하는 연산이다.
- 우선 순위 큐
- 값이 들어간 순서와 상관 없이 우선순위가 높은 데이터가 먼저 나오는 자료구조이다.
- 큐 설정에 따라 front에 항상 최댓값 또는 최솟값이 위치한다.
- 일반적으로 힙을 이용해 구현한다.