파이썬 스택, 큐 예제.
# 파이썬 Stack 예제
def push(data, n): # data: 스택 리스트, n: 추가할 값
data.append(n)
def pop(data): # data: 스택 리스트
if len(data)>0: # 빈 스택을 pop()하면 인덱스 에러 발생
return data.pop()
return False # 빈 스택이면 False 반환
stack = []
print('스택:', stack)
for i in range(1,4):
push(stack, i)
print('스택:', stack)
for i in range(1,4):
pop(stack)
print('스택:', stack)
[실행 결과]
스택: []
스택: [1]
스택: [1, 2]
스택: [1, 2, 3]
스택: [1, 2]
스택: [1]
스택: []
#---------------------------------------
# 파이썬 Queue 예제
def enqueue(data, n): # enqueue = push
data.append(n)
def dequeue(data):
if len(data)>0: # 빈 큐는 False 반환
return data.pop(0) # 처음 값 빼내서 반환
return False
queue = []
print(' 큐 :', queue)
for i in range(1,4):
enqueue(queue, i)
print(' 큐 :', queue)
for i in range(1,4):
dequeue(queue)
print(' 큐 :', queue)
[실행 결과]
큐 : []
큐 : [1]
큐 : [1, 2]
큐 : [1, 2, 3]
큐 : [2, 3]
큐 : [3]
큐 : []
<이상>
'Python 기초' 카테고리의 다른 글
파이썬, 피보나치 수열 n개 출력, n번째 값 반환 함수 (0) | 2020.09.18 |
---|---|
파이썬, 우선순위 큐 사용하기 PriorityQueue (0) | 2020.08.23 |
파이썬, 거듭제곱 재귀호출 함수 예제 (0) | 2020.08.10 |
파이썬, 버블 정렬, 선택 정렬, 삽입 정렬 예제 (0) | 2020.08.07 |
파이썬, 하노이 탑(hanoi tower) 재귀호출 및 반복문 (0) | 2020.08.07 |