스택(Stack)은 데이터를 순서대로 쌓는 자료구조이다.
모두가 아는 대표적인 예로 프링글스가 있다.
또, 브라우저의 뒤로 가기, 앞으로 가기 기능을 예로 들 수 있다.
후입선출(LIFO), 가장 마지막에 들어간 데이터가 가장 먼저 나오게 되는 자료구조이다.
스택(Stack)의 특징은 입출력 방향이 한 개로, 같다.
하나의 방향으로 입력되고 다시 그 방향으로 출력이 된다. 쌀보리를 하는 내 주먹과 같이 말이다.
큐(Queue)는 순서대로 들어간 데이터가 그 순서대로 나오는 자료구조이다.
톨게이트를 지나는 차량들에 비유할 수 있다.
선입선출(FIFO), 가장 먼저 들어간 데이터가 가장 먼저 나오게 되는 자료구조이다.
큐(Queue)에 데이터를 넣는 것은 'enqueue', 데이터를 꺼내는 것은 'dequeue'라고 한다.
큐(Queue)의 특징은 스택(Stack)과 다르게 입력과 출력의 방향이 다르다. (입출력 방향이 한 개가 아님)
하나의 방향으로 입력이 들어오면, 다른 방향으로 출력이 된다.
'Develop > Algorithm' 카테고리의 다른 글
그래프(Graph) 구조 (0) | 2022.09.24 |
---|---|
트리(Tree) 구조 (0) | 2022.09.24 |
재귀 함수와 메모리 사용량 관계 _ 꼬리 재귀 (1) | 2022.09.21 |
재귀(Recursion) (1) | 2022.09.20 |
배열 (0) | 2022.09.06 |