邻接矩阵递归深搜(有向图)
来源:互联网 发布:淘宝整点抢购 编辑:程序博客网 时间:2024/06/06 04:22
此代码是数据结构的原始模板,可以刚接触或考研时借鉴下,不适于刷题
#include<stdio.h>#include<malloc.h>#define INFINITY 32768int visited[100];typedef struct node1{int adj;}gra;typedef struct node2{gra arcs[100][100];int vertex[100];int vexnum,arcnum;}*graph,graph1;int locatevertex(graph &g,int v){int j=0,k;for(k=0;k<g->vexnum;k++){if(g->vertex[k]==v){j=k;break;}}return j;}void create(graph &g){int i,j,k,weight,v1,v2;printf("请输入图的最大顶点数和最大弧数: ");scanf("%d%d",&g->vexnum,&g->arcnum);for(i=0;i<g->vexnum;i++){for(j=0;j<g->vexnum;j++){g->arcs[i][j].adj=INFINITY;}}printf("请输入图的各顶点值: ");for(i=0;i<g->vexnum;i++)scanf("%d",&g->vertex[i]);for(k=0;k<g->arcnum;k++){printf("请输入两顶点表示有关系: ");scanf("%d%d",&v1,&v2);i=locatevertex(g,v1);j=locatevertex(g,v2);g->arcs[i][j].adj=1;}}void depthfirstsearch(graph &g,int v0){printf("%d ",g->vertex[v0]);visited[v0]=1; for(int i=0;i<g->vexnum;i++){if(visited[i]==0&&g->arcs[v0][i].adj==1)depthfirstsearch(g,i);}}void traversegraph(graph &g){for(int i=0;i<g->vexnum;i++)visited[i]=0;for(i=0;i<g->vexnum;i++){if(visited[i]==0){ depthfirstsearch(g,i);}}}int main(){graph g;g=(graph)malloc(sizeof(graph1));create(g);traversegraph(g);printf("\n");return 0;}
0 0
- 邻接矩阵递归深搜(有向图)
- 邻接矩阵有向图
- 邻接矩阵--有向图
- 有向图的创建(邻接矩阵)
- 有向图邻接矩阵实现
- 邻接矩阵存储有向图
- 邻接矩阵存储有向图
- 邻接矩阵、构造有向图
- 有向图的邻接矩阵
- 邻接表非递归深搜(有向图)
- 邻接表递归深搜(有向图)
- 用邻接矩阵存储的有向图的非递归遍历
- 图结构(四)- 邻接矩阵有向图
- Dijkstra(邻接矩阵有向图)C 实现~
- 有向图的DFS和BFS(邻接矩阵实现)
- 有向图的邻接矩阵类
- ACM模板--邻接矩阵 有向图
- 有向图的邻接矩阵存储
- wustoj 1593: Count Zeros【线段树】
- h5和css3兼容IE8浏览器
- 位运算使用场景
- 浏览器的渲染原理简介
- 设置self.automaticallyAdjustsScrollViewInsets = NO
- 邻接矩阵递归深搜(有向图)
- linux下安装yii
- description方法的使用场景
- 目标检测的图像特征提取
- PHP+Bootstrap制作动态分页标签
- Servlet
- 嵌入式C语言笔试题
- 深入懒加载
- php yii 调试sql的日志