728x90
반응형
stack = []
stack.append(1) # push 1
stack.append(2) # push 2
stack.append(3) # push 3
print(stack.pop()) # pop 3
print(stack.pop()) # pop 2
스택(Stack)은 데이터를 일시적으로 저장하기 위한 자료구조로, 데이터를 한쪽 끝에서만 삽입하거나 삭제할 수 있는 선형 자료구조입니다. 이 때 한쪽 끝을 Top, 다른 쪽 끝을 Bottom이라고 부릅니다. Top에서 삽입과 삭제가 일어나기 때문에, Last In First Out(LIFO) 구조라고도 부릅니다.
파이썬에서 스택을 구현할 때는 리스트(List) 자료형을 사용하면 됩니다. 파이썬의 리스트는 동적 배열로 구현되어 있어서, 크기를 지정하지 않아도 됩니다. 따라서 push 연산(스택에 새로운 요소를 추가하는 연산)을 수행할 때는 리스트의 append() 메소드를 사용하고, pop 연산(스택의 Top에서 요소를 제거하는 연산)을 수행할 때는 리스트의 pop() 메소드를 사용합니다.
예를 들어, 스택에 1, 2, 3을 순서대로 push한 후, 스택에서 두 개의 요소를 pop하면 다음과 같은 코드가 될 수 있습니다.
이 때, 마지막에 pop된 2가 스택에서 제거된 요소입니다. 스택의 Top에 있는 요소를 확인하고자 할 때는, 리스트의 마지막 요소를 인덱스 -1로 접근하면 됩니다.
스택의 기본적인 연산인 push, pop, top 등의 연산은 파이썬의 리스트를 사용하여 쉽게 구현할 수 있습니다. 이외에도, 스택을 이용한 다양한 알고리즘들이 존재하며, 스택 자료구조를 활용하여 빠른 시간 안에 구현할 수 있습니다.
728x90
반응형
'프로그래밍 언어 > 파이썬' 카테고리의 다른 글
파이썬 개인 신상 정보를 기록할 수 있는 클래스 (0) | 2023.05.24 |
---|---|
파이썬(Python) 초보자가 공부하기 좋은 5가지 예제 (0) | 2023.05.09 |
파이썬(Python) 기본 문법 코드 예시 (0) | 2022.12.29 |