파이썬에서는 그래프를 딕셔너리를 이용하여 나타낸다.
그래프의 키는 정점을, 값은 키와 연결된 정점을 나타낸다.
따라서 아래와 같이 나타낼 수 있다.
graph = {1 : [2,3,4], 2 : [5], 3 : [5], 4 : [], 5 : [6, 7], 6 : [], 7 : [3]}
입력받은 값을 리스트로 만들 때는 주로 아래와 같은 방법을 사용한다
#만약 n개만큼의 정점이 존재하고, m개만큼의 입력을 받는다면
graph = [[] for _ in range(n+1)] # n+1개만큼의 공간을 만들어서 graph[n]이 n번 정점을 나타내도록 해 준다
for _ in range(m):
x,y = map(int,input().split()) #만약 1 2를 입력받으면
graph[x].append(y) # 1번 정점에 2를 넣어주고 -> graph[1] = [2]
graph[y].append(x) # 2번 정점에 1을 넣어준다 -> graph[2] = [1]