스택

위키백과 ― 우리 모두의 백과사전.

스택의 구조
스택의 구조

스택(stack)은 기본적인 자료 구조의 하나로, 나중에 넣은 값이 먼저 나오는 구조를 가지고 있다. LIFO(Last In First Out)이라고 부르기도 한다.

스택에 새 데이터를 추가하는 것을 푸시(push), 빼내는 것을 (pop)이라고 한다. 가장 최근에 추가된 데이터부터 빼내게 된다. 예를 들어, a, b, c를 차례로 푸시한 다음 팝 동작을 하면 값이 c, b, a의 순서로 나오게 된다.

다수의 컴퓨터에서 포인터를 이용하여 실제 사용되고 있으며, 함수를 호출할 때 인수의 전달등에 이용된다. LIFO의 특징을 이용하여 역폴란드 표기법을 이용한 프로그래밍 언어인 포스(Forth) 등에 이용되고 있다.

DATA : A B C D

 

 PUSH(A)

 

 

 

A

 

PUSH(B)

 

 

B

A

 

   PUSH(C)

 

C

B

A

 

POP()

 

 

B

A

 

PUSH(D)

 

D

B

A

 

POP()

 

 

B

A

 

POP()

 

 

 

A

 

POP()

 

 

 

 

 

[편집] 관련 항목