반응형
스택 자료구조
먼저 들어온 데이터가 나중에 나가는 형식의 자료구조 (선입 후출)
입구와 출구가 동일한 형태로 스택을 시각화할 수 있다.
위의 박스가 쌓이는 것처럼 나중에 들어온 것이 먼저 나가는 구조이다.
# 구현
stack = []
stack.append(5)
=>[5]
stack.append(2)
=>[5,2]
stack.append(3)
=>[5,2,3]
stack.append(7)
=>[5,2,3,7]
stack.pop()
=>[5,2,3]
stack.append(1)
=>[5,2,3,1]
stack.append(4)
=>[5,2,3,1,4]
stack.pop()
=>[5,2,3,1]
# 최상단 원소부터 출력
print(stack[::-1]
=>[1,3,2,5]
#최하단 원소부터 출력
print(stack)
[5,2,3,1]
큐 자료구조
먼저 들어온 데이터가 먼저 나가는 형식(선입선출)
큐는 입구와 출구가 모두 뚫려있는 터널과 같은 형태로 시각화할 수 있다.
# 구현
from collections import deque
# 큐(Queue) 구현을 위해 deque 라이브러리 사용
queue = deque()
queue.append(5)
=>[5]
queue.append(2)
=>[5,2]
queue.append(3)
=>[5,2,3]
queue.append(7)
=>[5,2,3,7]
queue.popleft()
=>[2,3,7]
queue.append(1)
=>[2,3,7,1]
queue.append(4)
=>[2,3,7,1,4]
queue.popleft()
=>[3,7,1,4]
#먼저 들어온 순서대로 출력
print(queue)
deque([3,7,1,4])
#역순으로 변경
queue.reverse()
#나중에 들어온 원소부터 출력
print(queue)
deque([4,1,7,3])
www.youtube.com/watch?v=m-9pAwq1o3w&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC
이 자료는 동빈 나 님의 이코 테 유튜브 영상을 보고 정리한 자료입니다.
반응형
'Algorithm' 카테고리의 다른 글
[Algorithm] 18강 : DFS(깊이 우선 탐색) 알고리즘 정의와 예제 (0) | 2020.11.02 |
---|---|
[Algorithm] 17강 : 재귀함수의 정의와 예제 (0) | 2020.10.30 |
[Algorithm] 15강 : 구현 유형 문제 풀이 (0) | 2020.10.28 |
[Algorithm] 14강 : 구현 유형 개요 (0) | 2020.10.27 |
[Algorithm] 13 강 : 그리디 유형 문제풀이 + 백준 알고리즘 11399번 ATM문제 (0) | 2020.10.26 |