zoukankan      html  css  js  c++  java
  • 邻接矩阵的存储结构以及无向网图的创建

     1 #include "stdafx.h"
     2 #include <iostream>
     3 #include <exception>
     4 #include<string>
     5 using namespace std;
     6 //邻接矩阵存储结构
     7 typedef char VertexType;
     8 typedef int EdgeType;//权值类型
     9 const int maxVex = 100;//最大顶点数
    10 const int inFinity = 65535;//代表无穷大
    11 typedef struct 
    12 {
    13     VertexType vexs[maxVex];//顶点表
    14     EdgeType arc[maxVex][maxVex];//邻接矩阵
    15     int numVertexes,numEdges;//图中当前顶点数和边数
    16 }MGraph;
    17 //建立无向网图的邻接矩阵
    18 void CreateMGraph(MGraph *G)
    19 {
    20     int i,j,k,w;
    21     cout<<"输入顶点数和边数"<<endl;
    22     cin>>G->numVertexes>>G->numEdges;
    23     for(i = 0;i<G->numVertexes;++i)//输入顶点信息.建立顶点表
    24         cin>>G->vexs[i];
    25     for(i = 0;i<G->numVertexes;i++)//邻接矩阵的初始化
    26         for(j = 0;j<G->numVertexes;j++)
    27             G->arc[i][j]=inFinity;
    28     for(k=0;k<G->numEdges;++k)//读入numEdges条边,建立邻接矩阵
    29     {
    30         cout<<"输入边vi,vj上的下标i,j和权值w"<<endl;
    31         cin>>i>>j>>w;
    32         G->arc[i][j]=w;
    33         G->arc[j][i]=G->arc[i][j];//无向图,对称
    34     }
    35 }
    36 
    37 int _tmain(int argc, _TCHAR* argv[])
    38 { 
    39     
    40 
    41     return 0 ;
    42 }
  • 相关阅读:
    uva 1391(2-SAT)
    uva 1146(2-SAT+二分判断)
    uva 12167(强连通分支)
    uva 11324(强连通分支+DAG)
    Codeforces Round #227 (Div. 2) 解题报告
    uva 10319(2-SAT)
    uva 610(割边)
    uva 11504(强连通分支)
    测试:网页测试,入门面试题
    测试:安装包的测试
  • 原文地址:https://www.cnblogs.com/crazycodehzp/p/3545632.html
Copyright © 2011-2022 走看看