BFS
2015-08-07 15:58
471 查看
void BFS(MGraph *graph){ LinkQueue queue; int i,j,index; QElemType temp; initQueue(&queue); // 初始化一个访问标记数组 for(i = 0; i < MAX_VERTEX_NUM; i ++){ vertexStatusArrForBFS[i] = 0; } // 从每一个点 出发 访问 for(j = 0; j < graph->vexnum; j ++){ if(vertexStatusArrForBFS[j] == 0){ printf("%c",graph->vexs[j]); vertexStatusArrForBFS[j] = 1; enQueue(&queue,graph->vexs[j]); while(!queueEmpty(&queue)){ deQueue(&queue,&temp); //访问队列里的节点 index = findIndex(graph,temp); for(i = 0; i < MAX_VERTEX_NUM; i ++){ // 寻找节点的邻接点 if(graph->arcs[index][i].adj != 0){ if(vertexStatusArrForBFS[i] == 0){ printf("%c",graph->vexs[i]); vertexStatusArrForBFS[i] = 1; enQueue(&queue,graph->vexs[i]); } } } } } } }
相关文章推荐
- HTML5绘制颜色渐变
- JSON字符串和表互相转换
- centos 配置本地yum源
- Team Queue(POJ 2259)
- 第18章 多线程----线程简介
- 【暑假】[实用数据结构]UVAlive 4329 Ping pong
- c++内存池
- Shell中括号的作用
- springmvc+mybatis的配置信息
- Drupal 模块的 Hooks(钩子)
- Java子类继承父类
- 模板方法(Template)设计模式
- mysql中文乱码问题,phpmyadmin操作解决方法
- js判断本机是否已安装app
- Redis 事务
- 利用GPU改善程序性能的一点心得
- lynx
- JAVA代理机制中过的CGLIB代理自己关于的一点小小的理解
- css图片透明度设置问题
- 代码编写