第十二周项目3-图遍历算法实现
来源:互联网 发布:君子知怕分析 编辑:程序博客网 时间:2024/06/05 06:53
Copyright (c) 2015,烟台大学计算机学院All rights reserved,
文件名称:idea.cpp
作者:王阳
完成日期:2015年12月07日
#include"head.h"extern visited[MAXV];void BFS(ALGraph *G, int v){ ArcNode *p; int w,i; int queue[MAXV],front=0,rear=0; //定义循环队列 int visited[MAXV]; //定义存放节点的访问标志的数组 for (i=0; i<G->n; i++) visited[i]=0; //访问标志数组初始化 printf("%2d",v); //输出被访问顶点的编号 visited[v]=1; //置已访问标记 rear=(rear+1)%MAXV; queue[rear]=v; //v进队 while (front!=rear) //若队列不空时循环 { front=(front+1)%MAXV; w=queue[front]; //出队并赋给w p=G->adjlist[w].firstarc; //找w的第一个的邻接点 while (p!=NULL) { if (visited[p->adjvex]==0) { printf("%2d",p->adjvex); //访问之 visited[p->adjvex]=1; rear=(rear+1)%MAXV; //该顶点进队 queue[rear]=p->adjvex; } p=p->nextarc; //找下一个邻接顶点 } } printf("\n");}
#include"head.h"int visited[MAXV];int main(){ ALGraph *G; int A[5][5]= { {0,1,0,1,0}, {1,0,1,0,0}, {0,1,0,1,1}, {1,0,1,0,1}, {0,0,1,1,0} }; ArrayToList(A[0], 5, G); printf(" 由2开始广度遍历:"); BFS(G, 2); printf(" 由0开始广度遍历:"); BFS(G, 0); return 0;}
0 0
- 第十二周项目3—图遍历算法实现
- 第十二周 项目3 图遍历算法实现
- 第十二周实践项目3—图遍历算法实现
- 第十二周 项目3-图遍历算法实现(1)
- 第十二周项目3--图遍历算法实现
- 第十二周项目3-图遍历算法实现
- 第十二周 项目3-图遍历算法实现(2)
- 第十二周项目3图遍历算法实现
- 第十二周项目3-图遍历算法实现
- 第十二周 - 项目3 - 图遍历算法实现
- 第十二周项目3 - 图遍历算法实现(1)
- 第十二周项目3 - 图遍历算法实现(2)
- 第十二周项目3 图遍历算法实现(1)
- 第十二周项目3 图遍历算法实现(2)
- 第十二周项目3图遍历算法实现
- 第十二周项目3-图遍历算法实现
- 第十二周 项目3 图遍历算法实现
- 第十二周项目3-图遍历算法的实现
- iOS学习网站+书籍分享
- <2>Android Camera 架构简析1
- mysql导数据及注意事项
- 修复android 5.0 Xutils的框架问题retry error, curr request is null
- 第十三周项目链接
- 第十二周项目3-图遍历算法实现
- 【职场第一年】 我好像打酱油了半年
- jdbc_javax包
- app的transfer
- STL学习之迭代器和trait编程技巧
- Navicat 工具创建Mysql存储过程
- LoadRunner的简单使用《第一篇》
- unity NGUI Example1 Anchors
- 【优化】ALL_ROWS模式和FIRST_ROWS模式的适用场景