[Data Structure] 3. 스택

rany·2020년 6월 4일
0

자료구조

목록 보기
3/4
post-thumbnail

Stack(스택)

개념

데이터가 차곡차곡 쌓여있는 모양의 자료구조이다. 후입선출(LIFO: Last-In First-Out)의 입출력 형태이다. 영어 그대로(LIFO) 가장 나중에 들어온 데이터가 제일 먼저 나가는 구조이다. 따라서 스택의 입출력은 맨 위에서만 일어난다. 이 부분을 스택 상단이라고 한다.

연산

1. push

스택의 삽입 연산이다.
만약 스택이 가득 찬 상태에서 push 연산을 하면 오류가 발생한다.

2. pop

스택의 삭제 연산이다.
만약 공백 상태의 스택에서 pop 연산을 하면 삭제가 불가능하기 때문에 오류가 발생한다.

3. isEmpty

스택이 비어있지 확인하는 연산이다.

4. isFull

스택이 가득 차 있는지 확인하는 연산이다.

5. peek

스택의 맨 위에 있는 원소를 제거하지 않고 반환하는 연산이다.

맨 위에 뭐가 있는지 확인하는 용도!

따라서 스택에 가장 최근에 입력된 자료를 가리키는 top 변수가 필요하다. 초기값은 -1 이다.

그 외

  • 구현 방법 : 배열, 연결 리스트
  • 스택이 사용되는 예시 : 미로 문제, 괄호 맞추기, 후위 연산자 계산

스택처럼 쌓여있는 돌의 정령들 💚

profile
컴퓨터는 나의 베프

0개의 댓글