首页 > 其他 > 详细

图的遍历

时间:2020-08-15 23:04:29      阅读:87      评论:0      收藏:0      [点我收藏+]

1.深度优先遍历

void dfs(Graph G,int i) 
{
    visted[i] = 1;
    for (int j = 0; i < G.vex; j++)
    {
        if (G.arcs[i][j]==1&&visted[j]!=1)
        {
            dfs(j);
        }
    }

}

2.广度优先遍历

void  bfs(Graph G,int i) 
{
    int e = 0;
    Queue q = createQueue();
    visted[i] = 1;
    enQueue(q, i);
    while (isEmpty(q))
    {
        e = deQueue(q);
        for (int j = 0; j < G.vexnum; j++)
        {
            if (G.arcs[e][j] == 1 && visted[j] != 1) 
            {
                visted[j] = 1;
                enQueue(q, j);
            }
        }
    }
}

 

好了,我们下回见,peace

图的遍历

原文:https://www.cnblogs.com/gitpy123/p/13510310.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!