无向图顶点用二维数组存代码?
时间: 2023-12-11 22:02:50 浏览: 144
无向图的计算代码
以下是使用二维数组存储无向图顶点的代码示例:
```c++
#include <iostream>
using namespace std;
const int MAXN = 100;
int graph[MAXN][MAXN]; // 二维数组存储无向图
int main() {
int n, m; // n是顶点数,m是边数
cin >> n >> m;
// 初始化二维数组
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
graph[i][j] = 0; // 初始化为0
}
}
// 读入边的信息,更新邻接矩阵
for (int i = 0; i < m; i++) {
int u, v;
cin >> u >> v;
graph[u][v] = graph[v][u] = 1; // 更新邻接矩阵,因为是无向图,所以要更新两个位置
}
// 输出邻接矩阵
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cout << graph[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
在上述代码中,我们使用一个二维数组`graph`来存储无向图中顶点之间的关系。在读入边的信息时,我们更新邻接矩阵中对应的位置。最后,将邻接矩阵输出即可。
阅读全文