자료구조
스택(Stack) 이론과 파이썬 구현
me1
2020. 5. 19. 21:25
스택(Stack)
스택은 LIFO방식(Last-In First-out) 형식을 가집니다.
스택의 예는 창고에 있는 박스 더미, 책상에 쌓여있는 책이 있습니다.
창고에 기존 상자를 꺼내려면 제일 위에 있는 상자를 꺼내고 새로운 상자를 쌓으려면 제일 위에 상자를 쌓습니다.
즉, 가장 늦게 쌓여진 상자가 가장 먼저 나가게 되는 방식입니다.
스택의 삽입과 삭제가 제일 위에서 일어나고 중간 부분의 데이터를 삭제할 수 없습니다.
스택은 리스트를 통해 구현할 수 있습니다.
스택에서는 여러 연산이 있습니다.
push : 스택의 가장 뒤에 데이터 넣기
pop : 스택의 가장 뒤 데이터 제거
size : 스택의 크기 계산
top : 스택의 가장 뒤의 데이터 값을 확인
empty : 스택이 비었는지 확인
스택의 파이썬 코드입니다.
stack = []
stack.append(1)
stack.append(2)
stack.append(3)
stack.append(4)
stack.append(5)
# 출력>>[1, 2, 3, 4, 5]
print(stack)
stack.pop()
# 출력>>[1, 2, 3, 4]
print(stack)
stack.pop()
# 출력>>[1, 2, 3]
print(stack)