c++ - C ++中方格的邻接矩阵
问题描述
我正在尝试用 C++ 编写代码来计算 N × N 方格图的邻接矩阵,即所有 (i,j) 节点都与 (i+1,j),(i-1 ,j),(i,j-1) 和 (i,j+1) 节点。
我尝试了以下代码,该代码仅适用于 2 x 2 晶格,但不适用于更高阶。任何人都可以帮助我如何使此代码适合于查找 N × N 方格的邻接矩阵吗?
非常感谢任何帮助。
#include<iostream>
#include <cmath>
using namespace std;
int vertArr[20][20]; //the adjacency matrix initially 0
int count = 0;
void displayMatrix(int v) {
int i, j;
for(i = 0; i < v; i++) {
for(j = 0; j < v; j++) {
cout << vertArr[i][j] << " ";
}
cout << endl;
}
}
void add_edge(int u, int v) { //function to add edge into the matrix
vertArr[u][v] = 1;
vertArr[v][u] = 1;
}
main(int argc, char* argv[]) {
int N= 2;
int v =pow(N,2); //there are N^2 vertices in the N by N graph
int ii;
for(ii=0; ii<v; ii++){
add_edge(ii, ii+1);
add_edge(ii, ii-1);
add_edge(ii, ii+N);
add_edge(ii, ii-N);
}
displayMatrix(v);
}
解决方案
推荐阅读
- android - 树莓派3和安卓应用蓝牙发送消息但不接收
- python - 从浮点值列表中挑选和创建多个范围内的新值列表
- mysql - 尝试使用 Mysql.Data.Entity 时出现异常
- sitecore9 - Sitecore 9.1 安装错误
- java - JavaFX - 使用来自不同类的对象参数启动应用程序
- javascript - 在数据集中的引号内添加 JSON 结果
- java - 使用 ObjectMapper 反序列化到参数化类时出现 ClassCastException,即使使用 TypeReference 和 TypeFactory
- sql-server - 用于清理称呼的正则表达式功能
- kubernetes - Kiali 在 aws 上的 kubernetes 上安装错误 [错误:无法识别“STDIN”:版本“v1”中的种类“ClusterRole”没有匹配项]
- python - Keras 在反向传播的多个输出的多个损失中找到最佳损失