算法6.2 采用邻接表表示法创建无向图
时间: 2025-01-04 14:15:08 浏览: 16
### 创建无向图的邻接表表示法
为了创建一个基于邻接表表示法的无向图,可以采用如下方法[^1]:
```python
class Graph:
def __init__(self):
self.graph = {}
def add_edge(self, u, v):
if u not in self.graph:
self.graph[u] = []
if v not in self.graph:
self.graph[v] = []
# 添加边到两个顶点对应的列表中
self.graph[u].append(v)
self.graph[v].append(u)
def display_adj_list(self):
for vertex in self.graph:
print(f"{vertex}: {', '.join(str(node) for node in self.graph[vertex])}")
```
上述代码定义了一个 `Graph` 类来实现无向图的数据结构。通过调用 `add_edge()` 方法可以在任意一对节点之间建立连接关系;而 `display_adj_list()` 则用于展示当前图形中的所有相邻节点。
实际应用中,真实世界的大多数网络往往呈现出稀疏特性,即相对于完全连通的情况而言只存在少量链接[^4]。因此,在处理大规模数据集时选用邻接表而非矩阵能够显著减少空间占用并提高效率。
阅读全文