1. 术语及定义
1.1 定点
1.2 边
1.3 权重
1.4 图的定义
V = {V0, V1, V2, V3, V4, V5}
E = {(v0,v1,5), (v1, v2, 4), (v2, v3, 9)... }
1.5 路径
路径的顶点序列 (V3, V4, V0, V1)
路径对应的边 {(v3, v4, 7),(v4, v0, 1)}
1.6 环
2. 图的抽象矩阵类型
2.1 定义
#新建一个空图
Graph()
#添加一个顶点
addVertex(vert)
#添加一条有向边
addEdege(Fromvert, tovert)
#添加一条带权重的有向边
addEdge(fromvert, tovert, weight)
#在图中找到名为vertkey的顶点
getVertex(vertkey)
#以列表形式返回图中所有顶点
getVertices()
#获得顶点的ID
vertex.getid()
#获得顶点权重
vertex. getweight()
2.2 邻接矩阵
绝大多数单元格是空的,我们称这种矩阵是“稀疏”的。对于稀疏矩阵存储数据来看,矩阵并不高效
2.3 邻接表
{'id': v0, 'adj': {'v1':5, 'v5': 2}}