二维数组建图

//vector建图,顶点是数字,本质是邻接表;二维数组建图,顶点是数字,本质是邻接矩阵
#include<iostream>
#define maxn 100  //定义一个合适的值作为无边的标志
using namespace std;

int main(){
    int n,e,w,v1,v2;//顶点数、边数、权重、边邻接点v1与v2
    cout<<"请输入顶点数、边数:";
    cin>>n>>e;
    int G[n][n];
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            G[i][j]=maxn;
        }
    }
    cout<<"请输入各条边及权值:"<<endl;
    for(int k=0;k<e;k++){
        cin>>v1>>v2>>w;
        G[v1][v2]=w;
    }
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            cout<<G[i][j]<<" ";
        }
        cout<<endl;
    }
    return 0;
}
//请输入顶点数、边数:3 3
//请输入各条边及权值:
//0 1 4
//1 2 5
//2 0 6
//100 4 100
//100 100 5
//6 100 100

猜你喜欢

转载自www.cnblogs.com/zzyf/p/13392576.html