자 스택은 쌓아 올린다 라는 것을 의미 합니다.
- 책을 쌓는 것처럼 차곡차곡 쌓아 올린 형태의 자료구조
그림을 통해 봐볼게요 😚
특징을 살펴볼게요 !
- 같은 구조와 크기의 자료를 정해진 방향으로만 쌓을 수 있다.
- top 으로 정한 곳을 통해서만 접근 할 수 있다.
- 삽입되는 새 자료는 top 이 가리키는 자료위에 쌓이게 된다.
- 스택에서 자료를 삭제할 때도 top 을 통해서만 가능하다.
- 스택에서 top을 통해 삽입하는 연산 을
push
, top을 통한 삭제하는 연산을pop
라고 한다.
정리를 해보자면
- 스택은 시간 순서에 따라 자료가 쌓여서 가장 마지막에 삽입된 자료가 가장 먼저 삭제되는 구조이다.
- 이런 구조를 후입선출 구조 라고 한다
스택을 사용하는 방식을 활용한 예시
- 인터넷에 뒤로가기 버튼
- 컨트롤 Z (실행취소)
2. 큐(QUEUE) 란?
- 줄을 서서 기다리는 것, 그러니까 선입선출 방식이다.
그림을 통해 살펴보겠다.
특징을 살펴볼게요
- 한쪽 끝에서는 삽입 작업이 다른 쪽 끝에서는 삭제 작업이 양쪽으로 이루어 진다.
- 삭제연산만 수행되는 곳을 프론트(front), 삽입연산만 이루어지는 곳을 리어(rear)로 정하여 각각의 연산작업만 수행된다.
- 큐의 리어에서 이루어지는 삽입연산을 인큐(enQueue), 프론트에서 이루어지는 삭제연산을 디큐(dnQueue)라고 부른다.
큐를 사용하는 방식을 활용한 예시
- 프린터 인쇄 대기
- 콜센터 고객 대기시간