假设:
edges = [('a', 'b'), ('a', 'b'), ('a', 'c')]
这是矩阵的一些代码:
from collections import defaultdict
matrix = defaultdict(int)
for edge in edges:
matrix[edge] += 1
print matrix['a', 'b']
2
而对于“列表”:
from collections import defaultdict
adj_list = defaultdict(lambda: defaultdict(lambda: 0))
for start, end in edges:
adj_list[start][end] += 1
print adj_list['a']
{'c': 1, 'b': 2}