보통 리스트(list) 를 사용해서 쉽게 구현할 수 있다.
stack = []
# push (스택에 추가)
stack.append(10)
stack.append(20)
stack.append(30)
# pop (스택에서 꺼내기 - 가장 마지막 값)
top = stack.pop()
print(top) # 출력: 30
print(stack) # 출력: [10, 20]
LIFO = Last In, First Out
나중에 넣은 데이터가 먼저 나온다
동작 | 코드 | 설명 |
---|---|---|
push | stack.append(x) | 스택에 x 추가 |
pop | stack.pop() | 스택의 마지막 값 꺼내기 |
peek/top | stack[-1] | 스택의 맨 위 값 보기 (제거 X) |
isEmpty | if not stack: | 스택이 비었는지 확인 |
❗ 주의사항
stack.pop()
은 스택이 비어 있으면 에러가 나므로,
그래서 사용 전에if stack:
같은 체크를 해주는 게 좋다.