소프트웨어 개발
핵심075
스택(Stack)
출제 빈도
11회
원본 25쪽
스택은 리스트의 한쪽 끝으로만 자료의 삽입, 삭제 작업이 이루어지는 자료 구조이다.
스택은 가장 나중에 삽입된 자료가 가장 먼저 삭제되는 후입선출(LIFO; Last In First Out) 방식으로 자료를 처리한다.
• 스택의 응용 분야
- 함수 호출의 순서 제어- 인터럽트의 처리- 수식 계산 및 수식 표기법- 컴파일러를 이용한 언어 번역- 부 프로그램 호출 시 복귀주소 저장- 서브루틴 호출 및 복귀 주소 저장
스택의 모든 기억 공간이 꽉 채워져 있는 상태에서 데이터가 삽입되면 오버플로(Overflow)가 발생하며, 더 이상 삭제할 데이터가 없는 상태에서 데이터를 삭제하면 언더플로(Underflow)가 발생한다.
하였다가 B, C, D, A 순서로 출력하는 과정을 나열하시오.
PUSH
PUSH
POP
PUSH
POP
PUSH
POP
POP
| A |
|---|
| B |
|---|
| A |
| A |
|---|
| C |
|---|
| A |
| A |
|---|
| D |
|---|
| A |
| A |
|---|