图的储存之邻接矩阵
来源:互联网 发布:新开淘宝店卖什么好 编辑:程序博客网 时间:2024/05/29 07:38
#include<iostream>#include<cstring>#include<cstdlib>using namespace std;#define MaxVertexNum 100 //最大顶点数设为100 #define INFINTY 65535 typedef int Vertex; //用顶点下标表示顶点,为整形typedef int WeightType; //边的权值设为整数typedef char DataType; //顶点储存数据类型为字符型//图节点的定义typedef struct GNode *PtrToGNode;struct GNode{int Nv;//顶点数int Ne;//边数WeightType G[MaxVertexNum][MaxVertexNum];//邻阶矩阵DataType Data[MaxVertexNum];//存顶点数据//注意:若顶点无数据,此时Data[]可以不出现 };typedef PtrToGNode MGraph;//以邻阶矩阵 储存的图类型//边的定义typedef struct ENode* PtrToENode;struct ENode{Vertex V1,V2;//有向边<V1,V2>WeightType Weight;//权重 };typedef PtrToENode Edge;MGraph CreateGraph(int VertexNum){//初始化一个有VertexNum个顶点但没有边的图Vertex V,W;MGraph Graph;Graph=(MGraph)malloc(sizeof(struct GNode));//建立图Graph->Nv= VertexNum;Graph->Ne=0;//初始化邻阶矩阵//注意:这里默认的编号从0开始,到(Graph->Nv-1) for(V=0;V<Graph->Ne;V++){ for(W=0;W<Graph->Nv;W++){ Graph->G[V][W]=INFINTY; } }return Graph;}void InsertEdge(MGraph Graph,Edge E){//插入边<V1,V2>Graph->G[E->V1][E->V2]=E->Weight; }MGraph BuildGraph(){MGraph Graph;Edge E;Vertex V;int Nv,i;scanf("%d",&Nv);//读入顶点数 Graph=CreateGraph(Nv);//初始化有Nv个顶点但没有边的图scanf("%d",&(Graph->Ne));//读入边数if(Graph->Ne!=0){//如果有边E=(Edge)malloc(sizeof(struct ENode));//建立边结点//读入边,格式为“起点 终点 权重”,插入邻阶矩阵for(i=0;i<Graph->Ne ;i++){scanf("%d %d %d\n",&E->V1 ,&E->V2 ,&E->Weight );//注意:如果权重不是整数,Weight的读入格式要改InsertEdge(Graph,E); }}//如果顶点有数据的话,读入数据for(V=0;V<Graph->Nv ;V++){scanf("%c",&(Graph->Data[V]));}return Graph;}void out(MGraph Graph){Vertex V,W;for(V=0;V<Graph->Nv ;V++){for(W=0;W<Graph->Nv ;W++){printf("%d ",Graph->G[V][W]);}printf("\n");}for(V=0;V<Graph->Nv;V++){printf("%c ",Graph->Data[V]);}printf("\n");}int main(){freopen("C:\\Users\\DELL\\Desktop\\新建文件夹 (2)\\text.txt","r",stdin);MGraph Graph;Graph=BuildGraph();out(Graph);free(Graph); return 0;}
0 0
- 图的储存之邻接矩阵
- 图的储存结构之邻接矩阵
- 图的储存方式之邻接矩阵
- 无向图邻接矩阵的储存和深度优先遍历
- 项目 2 - 操作用邻接表/邻接矩阵储存的图
- 数据结构之图的邻接矩阵
- 【数据结构_图_DFS_1072】有向图邻接矩阵储存根的计算
- 数据结构:不带权有向图的邻接矩阵和邻接表储存及求出入度实现
- 数据结构之图的邻接矩阵的操作
- 有向图和无向图用邻接矩阵储存
- 数据结构:图的存储结构之邻接矩阵
- 数据结构之图的邻接矩阵存储方法
- 图的邻接矩阵存储之C++封装
- 数据结构:图的存储结构之邻接矩阵
- 数据结构:图的存储结构之邻接矩阵
- 数据结构之图的储存,搜索
- 图的储存之邻接表
- 图的储存结构之邻接表
- Java反射基础
- Jquery相关层次选择器
- 四连通与八连通
- yii查询相关
- 坚持#第178天~录屏是个双倍神符,学知识超快,能够提升自己、别忘了学以致用,有什么好害羞的!
- 图的储存之邻接矩阵
- hdu5971 Wrestling Match(染色法判二分) 2016ACM/ICPC亚洲区大连站
- Tensorflow学习: RNN-LSTM应用于MNIST数据分类
- 《Cracking the Coding Interview程序员面试金典》----下一个元素(下一个比他大的)
- HDU
- fasterxml如何对Java枚举类型做类型转换
- httpclientpost网络获取数据
- [Android] Android Studioの打包问题
- rpm,diff,patch,grep,cut,sort,tr