Dev.Basic/자료구조
Stack(스택) & Queue(큐)
zeekke
2019. 10. 10. 02:56
List(리스트)는 동일한 자료형으로 된 원소들의 모임으로 linear list(선형 리스트)와 linked list(연결 리스트)로 나뉩니다.
Linear list의 종류로는 배열, 스택, 큐, 순환 큐 등이 있습니다.
Stack(스택)
stack은 linear list의 일종으로, LIFO(Last-In, First-Out) 특징을 가집니다.
즉, 나중에 들어간 원소가 먼저 나오고, 먼저 들어간 원소가 나중에 나옵니다.
선반에 접시를 차곡차곡 쌓는 것을 연상하시면 됩니다.
접시를 하나 쌓을 때 stack의 가장 위 접시에 쌓고, 접시를 하나 집을 때, stack의 가장 위 접시를 집는 상황과 일치합니다.
Queue(큐)
queue는 linear list의 일종으로, FIFO(First-In, First-Out) 특징을 가집니다.
즉, 먼저 들어간 원소가 먼저 나오고, 나중에 들어간 원소가 나중에 나옵니다.
입국 심사대를 연상하시면 쉽습니다.
입국 심사 줄에서 가장 앞에 서 있는 사람이 가장 먼저 나오고, 가장 뒤에 서 있는 사람이 가장 늦게 나오는 상황과 일치합니다.