/*
邻接矩阵 (函数版)
作者:Zhihang
*/
#include<iostream>
using namespace std;
const int n=5; //图的点数
int m=0; //图的边数
bool map[n][n]; //邻接矩阵用数组
bool isLian(int v , int w ){ //判断两点是否相连
return map[v][w]; //返回
}
int addBian(int v , int w , bool hasQuan){ //增加一条边
if(isLian(v,w)){ //如果已经连好,则退出
return 0;
}
map[v][w]=true; //连
if(!hasQuan) //如果是无向图,则要反向连好
map[w][v]=true;
m++; //图的边数增加1
return 0;
}
int main(){
for(int i=0;i<n;i++){ //邻接矩阵 初始化
for(int j=0;j<n;j++){
map[i][j]==false;
}
}
//连接一个五角星
addBian(1,3,false);
addBian(1,4,false);
addBian(2,4,false);
addBian(2,0,false);
addBian(3,0,false);
//显示出来
cout<<" 0 1 2 3 4"<<endl;
for(int i=0;i<n;i++){
cout<<i<<": ";
for(int j=0;j<n;j++){
cout<<map[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
打开App,阅读手记