스택은 박스 쌓기에 비유할 수 있으며 선입후출 또는 후입선출 구조이다.
파이썬은 기본리스트에서 append()와 pop() 메서드를 사용하면 스택 자료구조와 동일하게 동작한다. append()는 리스트의 가장 뒤쪽에 데이터를 삽입하고, pop()은 리스트의 가장 뒤쪽에서 데이터를 꺼내기 때문이다.
stack=[]
stack.append(5)
stack.append(2)
stack.append(3)
stack.pop()
stack.append(4)
print(stack)
[5,2,4]
from collections import duque
#큐 구현을 위해 deque 라이브러리 사용
queue=deque()
queue.append(5)
queue.append(2)
queue.append(3)
queue.popleft()
queue.append(4)
print(queue)
[2,3,4]
def factorial_recursive(n):
if n <= 1:
return 1
return n* factorial_recursive(n-1)
def factorial_iterative(n):
result = 1
for i in range(1,n+1):
result*=i
return result
이것이 취업을 위한 코딩 테스트다 with 파이썬 - 나동빈 저