**graph(그래프)**는 **간선(edge)**으로 연결된 **정점(vertex)**들의 집합입니다. 두 가지 표준 표현은 adjacency list(인접 리스트)(각 정점이 이웃을 저장)와 adjacency matrix(인접 행렬)(V×V 불리언 격자)입니다. 선택은 그래프의 **밀도(density)**에 따라 달라집니다.
두 가지 형태
text
Graph: 0 - 1
| |
2 - 3
Adjacency list: Adjacency matrix:
0: [1, 2] 0 1 2 3
1: [0, 3] 0 [0 1 1 0]
2: [0, 3] 1 [1 0 0 1]
3: [1, 2] 2 [1 0 0 1]
3 [0 1 1 0]
코드
python
adj = {: [, ], : [, ], : [, ], : [, ]}
neighbors = adj[]
matrix = [[]* _ ()]
matrix[][] = matrix[][] =
has_edge = matrix[][] ==
