1.运用Python环境,编写程序,构造图(无向图)的邻接矩阵,代码及运行结果,
时间: 2025-01-05 11:43:09 浏览: 3
好的,我可以为您提供一个使用Python构造无向图邻接矩阵的示例程序。以下是代码和运行结果:
```python
# 导入numpy库用于矩阵操作
import numpy as np
# 定义图的顶点数量
num_vertices = 5
# 初始化邻接矩阵为全零矩阵
adjacency_matrix = np.zeros((num_vertices, num_vertices), dtype=int)
# 定义边列表
edges = [(0, 1), (0, 4), (1, 2), (1, 3), (1, 4), (2, 3), (3, 4)]
# 根据边列表构造邻接矩阵
for (i, j) in edges:
adjacency_matrix[i][j] = 1
adjacency_matrix[j][i] = 1 # 因为是无向图,所以对称位置也要赋值
# 打印邻接矩阵
print("无向图的邻接矩阵:")
print(adjacency_matrix)
```
运行结果:
```
无向图的邻接矩阵:
[[0 1 0 0 1]
[1 0 1 1 1]
[0 1 0 1 0]
[0 1 1 0 1]
[1 1 0 1 0]]
```
这个程序首先导入了numpy库用于矩阵操作。然后定义了图的顶点数和初始化邻接矩阵。接着定义了一个边列表,其中包含了图中所有的边。
在主循环中,程序遍历边列表,将对应的邻接矩阵元素设为1。由于是无向图,程序同时设置了(i, j)和(j, i)两个位置。
最后,程序打印出构造好的邻接矩阵。
这个邻接矩阵清晰地展示了图的结构:
- 行和列都代表图的顶点
- 矩阵中的1表示对应顶点之间有边相连
- 对角线元素为0,因为假设图中没有自环
阅读全文