[Queue와 Stack의 차이] 큐와 스택의 개념과 차이점
2021. 11. 15. 22:10ㆍ[Data Structrue] 자료구조
반응형
😁 스택이란?
스택은 LIFO구조로 마지막에 들어온 데이터가 먼저 나가는 자료구조이다.
책을 쌓는 것 처럼 차곡차곡 쌓아 올린 형태의 자료구조를 말한다.
😊 스택의 특징
스택은 위의 사진처럼 같은 자료형의 값을 하나의 방향으로만 쌓을 수 있고,
top으로 정한 곳을 통해서만 접근할 수 있다.
top에는 가장 위에 있는 자료는 가장 최근에 들어온 자료를 가리키고 있으며,
삽입되는 새 자료는 top이 가리키는 자료의 위에 쌓이게 된다.
스택에서 top을 통해 삽입하는 연산을 'push', top을 통해 삭제하는 연산을 'pop'이라고한다.
따라서 스택은 시간 순서에 따라 자료가 쌓여서 가장 마지막에 삽입된 자료가
가장 먼저 삭제된다는 구조적 특징을 가지게 된다.
이러한 스택의 구조를 후입선출(LIFO, Last-In-First-Out)구조라고 한다.
큐(QUEUE)란?
Queue는 First In First Out방식으로 먼저 들어간 데이터는 먼저 나가는 자료구조이다.
😘 큐의 특징
Queue는 한 쪽 끝에서는 삽입 작업이, 다른 쪽 끝에서 삭제 작업이 양쪽으로 이루어진다.
이 때 삭제연산이 수행되는 곳을 프론트(front), 삽입연산만 이루어지는 곳을 리어(rear)로 정하여
각각의 연산작업만 수행된다. 이때 큐의 리어(rear)에서 이루어지는 삽입연산을 인큐(enQueue)
프론트(front)에서 이루어지는 삭제연산을 디큐(dnQueue)라고 부른다.
반응형
'[Data Structrue] 자료구조' 카테고리의 다른 글
[Hash] 해시란? (0) | 2021.11.16 |
---|---|
[Tree] 트리란? (0) | 2021.11.16 |
[Heap] 힙이란? (0) | 2021.11.15 |
[ArrayList vs Linked List] 의 차이점 (0) | 2021.11.15 |
[Array] 배열 이란? (0) | 2021.11.15 |