#include<iostream> #include <cstdio> #include <cstdlib> using namespace std; //图的邻接矩阵存储结构 typedef char VertexType;//顶点类型应由用户定义 typedef int EdgeType;//边上的权值类型应由用户定义 #define ok 1 #define false 0 #define MAXVEX 100 //最大顶点数,应由用户定义 #define INFINITY 100000 //用65535代表无穷远,表示不相邻 typedef struct { VertexType vexs[MAXVEX];//顶点表 EdgeType arc[MAXVEX][MAXVEX];//邻接矩阵,可看作边表 int numVertexes,numEdges;//图中当前的顶点数和边数 }MGraph; int creat_graph(MGraph *g){ int i,j,k,w; //输入顶点数和边数 cin>>g->numVertexes>>g->numEdges; //初始化邻接矩阵 for(i=0;i<g->numVertexes;i++){ for( j=0;j<g->numVertexes;j++){ g->arc[i][j]=INFINITY; } } //用边数在邻接表中进行赋值操作 for( k=0;k<g->numEdges;k++){ cin>>i>>j>>w; g->arc[i][j]=w; //有向图时不需要这个,无向图时需要加上 g->arc[j][i]=g->arc[i][j]; } return ok; } //打印邻接表 int printf_linjiebiao( MGraph *g){ for(int i=0;i<g->numVertexes;i++){ for(int j=0;j<g->numVertexes;j++){ cout<<g->arc[i][j]<<" "; } cout<<endl; } return ok; } int main(int argc, char const *argv[]) { MGraph g; creat_graph(&g); printf_linjiebiao(&g); return 0; }
0.0分
0 人评分
大神老白 (C语言代码)浏览:691 |
C语言训练-字符串正反连接 (C语言代码)浏览:664 |
C语言训练-计算:t=1-1/(2*2)-1/(3*3)-...-1/(m*m) (C语言代码)浏览:799 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:5275 |
Wu-求圆的面积 (C++代码)浏览:1994 |
母牛的故事 (C语言代码)浏览:594 |
核桃的数量 (C语言代码)浏览:726 |
简单的a+b (C语言代码)浏览:574 |
Pascal三角 (C语言代码)浏览:707 |
图形输出 (C语言代码)浏览:1019 |