Algorithm 2 Stack
Updated:
스택 (Stack)
1. 스택 구조
- 스택은 LIFO, FILO 데이터 관리 방식을 따름
2. 용어
- push() : 스택에서 데이터를 넣기
- pop() : 스택에서 데이터를 빼기
3. 스택의 장단점
- 장점
- 구조가 단순해서 구현이 쉽다.
- 데이터 저장/읽기 속도가 빠른다.
- 단점
- 데이터 최대 갯수를 미리 정해야 한다.
- 저장 공간의 낭비가 발생할 수 있다.
4. Python 리스트 기능으로 스택 구현해보기
stack = list()
stack.append('python')
stack.append('java')
stack.append('go')
stack
['python', 'java', 'go']
stack.pop()
'go'
- LIFO에 따라 가장 마지막에 넣은 ‘go’가 빠져나온걸 볼 수 있다.
5. 리스트 변수로 push(), pop() 구현해보기
s_list = list()
def push(data):
s_list.append(data)
def pop():
data = s_list[-1]
del s_list[-1]
return data
for i in range(1, 11):
push(i)
pop()
10
- push() 에서 range(1, 11)로 지정을 해주었기 때문에 리스트에 1부터 10까지 들어가게 되었고 pop() 로 확인을 해보니 가장 나중에 들어간 10을 빼낸걸 확인할 수 있다.
Leave a comment