반응형
자료구조 중 대표적인 형태로서 스택(Stack)이란 것이 있습니다. 스택은 한쪽 끝에서만 자료를 넣거나 뺄 수 있는 구조로, LIFO(Last-In, First-Out) 형태로 되어 있습니다. 자료를 넣는 것은 push라고 하고, 자료를 빼내는 것은 pop이라고 하는데, 가장 최근 데이터가 입력되고 나오게 됩니다.
파이썬에서는 리스트의 메서드를 활용하면 스택으로 사용하는 것을 쉽게 처리하고 있습니다. 여기서 자료를 넣는 push는 리스트의 append 메서드를 통해, 자료를 꺼내려는 경우 pop을 활용하면 됩니다. 다음은 파이썬 공식문서에서 보여주고 있는 간단한 예시입니다.
>>> stack = [3, 4, 5]
>>> stack.append(6)
>>> stack.append(7)
>>> stack
[3, 4, 5, 6, 7]
>>> stack.pop()
7
>>> stack
[3, 4, 5, 6]
>>> stack.pop()
6
>>> stack.pop()
5
>>> stack
[3, 4]
append를 통해 원소를 넣으면 가장 끝에 데이터가 쌓이고, 아무런 명시적 인덱스가 없는 pop()을 사용하면 데이터가 가장 끝에 있는 데이터부터 빠져나오는 것을 확인할 수 있습니다.
5. 자료 구조 — Python 3.10.1 문서
5. 자료 구조 이 장에서는 여러분이 이미 배운 것들을 좀 더 자세히 설명하고, 몇 가지 새로운 것들을 덧붙입니다. 5.1. 리스트 더 보기 리스트 자료 형은 몇 가지 메서드들을 더 갖고 있습니다. 이
docs.python.org
반응형
'Python > CS' 카테고리의 다른 글
[알고리즘] 파이썬으로 너비 우선 탐색 구현하기 | Python, BFS (0) | 2021.12.27 |
---|---|
[자료구조] 파이썬으로 큐(Queue) 사용하기 | Python (0) | 2021.12.24 |
[알고리즘] 파이썬으로 계수정렬(Counting Sort) 구현하기 | Python (0) | 2021.12.19 |
[알고리즘] 파이썬으로 힙정렬(Heap sort) 구현하기 | Python (0) | 2021.12.11 |
[알고리즘] 파이썬으로 병합정렬/합병정렬 (Merge Sort) 구현하기 (0) | 2021.10.10 |