<aside> 1️⃣ 그래프를 인접 행렬과 인접 리스트로 변환하는 코드를 작성하시오.
</aside>
→ 나만의 답을 적어주세요.
파이썬 예시
그래프
# num of vertex
n = 6
# edge = [u, v]
edge_set = [[1, 2], [2, 6], [2, 4], [4, 3], [3, 2], [3, 5]]
인접 행렬
graph = [[0 for _ in range(n)] for _ in range(n)]
for u, v in edge_set:
graph[u][v] = 1
graph[v][u] = 1
인접 리스트
# dict version
graph = {}
for u, v in edge_set:
if u not in graph:
graph[u] = []
graph[u].append(v)
if v not in graph:
graph[v] = []
graph[v].append(u)
# defaultdict version
from collections import defaultdict
graph = defaultdict(list)
for u, v in edge_set:
graph[u].append(v)
graph[v].append(u)