当前位置: 代码迷 >> 综合 >> 【数据结构与算法】Python 图及算法学习笔记
  详细解决方案

【数据结构与算法】Python 图及算法学习笔记

热度:51   发布时间:2024-03-07 14:52:21.0

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}}

 

 

  相关解决方案