Algorithm/Python
[Python] 스택
채소기
2024. 9. 3. 23:50
스택은 가장 나중에 들어온 자료가 가장 먼저 빠져나가는 LIFO(Last-In-First-Out) 자료구조이다.
아래의 그림을 참고하면 이해하기 편하다.
그렇다면 파이썬에서는 스택을 어떻게 구현할까?
사실 따로 구현할 필요가 없다. 우리가 평소에 사용하는 list가 그 자체로 스택으로 쓰일 수 있기 때문이다.
사용 방법을 알아보자.
Stack - init
# 빈 스택으로 초기화
stack = []
Stack - push
# 스택에 원소 추가
stack = [1, 2, 3, 4, 5]
stack.append(6)
# [1, 2, 3, 4, 5, 6]
Stack - pop
# 스택의 원소 제거
stack = [1, 2, 3, 4, 5]
top = stack.pop()
print(top)
print(stack)
# 3
# [1, 2, 3, 4, 5]
Stack - top
# 스택의 top 가져오기
stack = [1, 2, 3, 4, 5]
top = stack[-1]
print(top)
# 5
이 정도만 알아도 코딩테스트에서 스택을 활용할 수 있다.