数据结构——邻接矩阵的基本操作creatmat
时间: 2024-11-24 12:40:06 浏览: 115
邻接矩阵是一种用于表示图的数据结构,它是一个二维数组,其中的每个元素表示两个顶点之间是否存在边。对于有向图,矩阵是对称的(如果有从A到B的边,也有从B到A的边),而对于无向图,矩阵是对称并且值非零表示两条边。
创建邻接矩阵的基本操作可以分为以下几步:
1. 初始化矩阵:确定矩阵的大小,通常为图中顶点的数量。如果是无向图,对角线上的元素通常是0,因为没有顶点与自身相连。
```python
# Python示例
n = len(graph) # 图中顶点数
adj_matrix = [[0] * n for _ in range(n)]
```
2. 填充矩阵:遍历图中的每条边,并在对应的矩阵位置上记录边的存在。对于有向图,只有起点指向终点的位置置1;对于无向图,则双向置1。
```python
for u, v in graph.edges():
adj_matrix[u][v] = 1 (无向图)
if not is_directed: adj_matrix[v][u] = 1 (有向图)
```
3. 查看或修改边:通过矩阵索引来快速查看两个顶点间是否有边,如果需要添加或删除边,只需更新相应位置即可。
```python
if adj_matrix[i][j]: # 判断i和j之间是否有边
print(f"节点{i}和节点{j}直接相连")
else:
print("节点{i}和节点{j}不直接相连")
adj_matrix[i][j] = 1 # 添加边
adj_matrix[i][j] = 0 # 删除边
```
阅读全文
相关推荐



















