728x90
반응형
스택(Stack): 한쪽 끝에서만 데이터를 삽입하거나 삭제하는 자료구조
데이터 삽입 연산: push
데이터 삭제 연산: pop
데이터 읽기 연산: top
LIFO (Last-In First-Out): 마지막에 들어온 데이터가 먼저 삭제되는 방식
Stack을 코드로 구현해보면
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
class Stack:
def __init__(self):
self._items = []
def __len__(self): #스택길이
return len(self._items)
def __str__(self):
return str(self._items)
def is_empty(self):
return self._items == []
def push(self, item): #삽입
self._items.append(item)
def pop(self): #삭제
if not self.is_empty():
return self._items.pop()
def top(self): #맨앞의 값
if not self.is_empty():
return self._items[-1]
|
cs |
다음은 스택을 응용한 문제에 대해 알아보겠습니당
728x90
반응형
'자료구조' 카테고리의 다른 글
[파이썬 자료구조] 회문 검사 (0) | 2020.05.05 |
---|---|
[파이썬 자료구조] 괄호 매칭 (0) | 2020.05.05 |
[파이썬 자료구조] 이중연결리스트(Doubly Linked Lists) (0) | 2020.05.05 |
#7 자료구조 <Sierpinski Triangles recursively> 파이썬 (0) | 2020.05.05 |
[파이썬 자료구조] 하노이탑 (0) | 2020.05.05 |