스택(STACK)
스택(STACK)은 LIFO(Last in First Out) 방식으로 말 그대로 가장 마지막에 삽입된 자료가 가장 먼저 삭제된다고 하여 "후입선출" 구조 라고 한다.
또한 스택(STACK)은 top으로 정한 곳을 통해서만 접근할 수 있다. 새로 삽입되는 자료는 top이 가리키는 가장 맨 위에 쌓이게되며, 자료를 삭제할 때도 top을 통해서 삭제가 가능하다.
top을 통해 삽입하는 연산을 'push' , top을 통해 삭제하는 연산을 'pop'이라고 한다.
큐(QUEUE)
정해진 한곳(top)을 통해서 삽입, 삭제가 이루어지는 스택과 달리 큐는 한쪽 끝에서 삽입작업이, 다른쪽 끝에서는 삭제 작업이 이루어진다.
삭제 연산이 수행되는 곳을 프론트(front), 삽입연산이 이루어지는 곳을 리어(rear)라고 하며 작업이 나뉘어서 이루어지고 있다.
이때, 큐의 리어에서 이루어지는 삽입연산을 인큐(enQueue), 프론트에서 이루어지는 삭제연산을 디큐(dnQueue)라고 부른다.
요약
스택(STACK) - LIFO(Last in First Out)
큐(QUEUE) - FIFO(First in First Out)