算法 7.5.txt

来自「《数据结构及应用算法教程》一书的源代码。作者:严蔚敏」· 文本 代码 · 共 21 行

TXT
21
字号
算法 7.5
void BFSTraverse(MGraph G) 
{
      // 对以数组存储表示的图G进行广度优先搜索遍历。
      bool  visited[G.vexnum];           // 访问标志数组
      SqQueue Q;                         // 附设循环队列Q
      for (v=0; v<G.vexnum; ++v)  visited[v] = FALSE;
      InitQueue(Q,G.vexnum);               // 设置空队列Q
      for ( v=0;  v<G.vexnum;  ++v )
        if ( !visited[v]) {                     
          visited[v] = TRUE;  VisitFunc(G.vexs[v]); // 访问图中第v个顶点
          EnQueue_Sq(Q, v);                         // v入队列
          while (!QueueEmpty_Sq(Q))  {
            DeQueue_Sq(Q, u);                       // 队头元素出队并置为u
            for ( w=0;  w<G.vexnum;  w++; )
              if ( G.arcs[u, w].adj && ! visited[w] ) {
                visited[w] = TRUE;  VisitFunc(w);   // 访问图中第w个顶点                                         EnQueue_Sq(Q, w);                   // 当前访问的顶点w入队列Q
              } //if
           } //while
         } //if
} // BFSTraverse

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?