博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图的一些基本算法
阅读量:5748 次
发布时间:2019-06-18

本文共 1844 字,大约阅读时间需要 6 分钟。

#include 
#include
const int MAXV=5;typedef char ELEMENT_TYPE;typedef int InfoType;//树的邻接矩阵表示方法,分别表示了点,和边typedef struct{ int no; ELEMENT_TYPE info;}VertexType; typedef struct{ int edges[MAXV][MAXV]; int n,e;//分别表示定点数和边数 VertexType vexs[MAXV];}MGraph;int A[MAXV][MAXV]={
0,1,1,1,0, 1,0,1,0,1,1,1,0,1,1,1,0,1,0,1,0,1,1,1,0};//树的邻接表存储typedef struct ANode{ int adjvex;//边的终点位置 ANode *nextarc; InfoType info;}ArcNode;typedef struct { ELEMENT_TYPE data; ArcNode *firstarc;}Vnode;typedef struct{ Vnode adjlist[MAXV]; int n,e;}AGraph;//通过一个a[][]矩阵生成一个MGraph类型的gvoid CreatMat(MGraph &g,int (*a)[MAXV],int n){ int i,j; g.n=n; g.e=0; for (i=0;i
n=n; G->e=0; for(i=0;i
adjlist[i].firstarc=NULL; for(i=0;i
=0;j--) { if (a[i][j]!=0) { p=(ArcNode*)malloc(sizeof(ArcNode)); p->adjvex=j; p->nextarc=G->adjlist[i].firstarc; G->adjlist[i].firstarc=p; G->e++; } }}//输出图的邻接表void DispAdj(AGraph *G){ int i; ArcNode *p; for(i=0;i
n;i++) { printf("[%d]->",i+1); p=G->adjlist[i].firstarc; while(p!=NULL) { printf("%d->",p->adjvex+1); p=p->nextarc; } printf("\n"); }}//求用邻接表存储的图的chu度void OutDs(AGraph *B){ int i; ArcNode *p; int A[MAXV]={ 0}; for (i=0;i
n;i++) { p=B->adjlist[i].firstarc; while(p!=NULL) { A[i]++; p=p->nextarc; } } printf("各个点的入度:\n"); for (i=0;i
n;i++) printf(" 顶点%d:%d\n",i+1,A[i]);}void main(){ MGraph g; AGraph *G; CreatMat(g,A,MAXV); printf("输出MGraph g:\n"); DispMat(g); GreateAdj(G,A,MAXV); printf("输出AGraph *G:\n"); DispAdj(G); printf("输出AGraph *G的各点的入度:\n"); OutDs(G);}

 

转载于:https://www.cnblogs.com/lisongfeng9213/p/3436142.html

你可能感兴趣的文章
HTML元素属性测试总结(续篇)
查看>>
【python】编程语言入门经典100例--28
查看>>
Cocos2d-x游戏实例-《跑跑跑》制作教程(第一篇)——加载地图
查看>>
Jquery绑定事件
查看>>
android 资源种类及使用
查看>>
基于ajax+struts实现的二级联动
查看>>
类似Freemarker的另一款模版工具velocity
查看>>
成功应用BI的策略
查看>>
图片验证码
查看>>
Explorer程序出错
查看>>
JDBC如何进行超时设置
查看>>
2014年四大热门语言的最佳实践
查看>>
java之抽象工厂
查看>>
单链表的操作
查看>>
php mysql事务处理回滚操作
查看>>
log4j2性能剖析
查看>>
修改系统时间 ubuntu
查看>>
Centos7同时运行多个Tomcat
查看>>
Linux的find命令
查看>>
使用CocoaPods过程中的几个问题
查看>>