基本信息
源码名称:数据结构 图的遍历源代码
源码大小:0.26M
文件格式:.zip
开发语言:C/C++
更新时间:2020-10-27
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 3 元 
   源码介绍

数据结构图的遍历

函数流程图


void meau()

{

    printf("__________________________________________________________ \n");

    printf("|                                                         |\n");

    printf("|******************请选择你要实现的功能*******************|\n");

    printf("|****************1.深度遍历图并输出序列*******************|\n");

    printf("|****************2.广度遍历图并输出序列*******************|\n");

    printf("|****************3.深度遍历图并输出生成树的边集***********|\n");

    printf("|****************4.广度遍历图并输出生成树的边集***********|\n");

    printf("|****************0.退出***********************************|\n");

    printf("|_________________________________________________________|\n");

}//menu

int main()

{

    do

    {

        for(i=0;i<G.vexnum;i )

        {

            visited[i]=0;

       }

        meau();

        printf("please input the number of the function: ");

        scanf("%d",&n);

        switch(n)

        {

            case 1:

                scanf(a);m=Locate(G,a);//找到a在邻接多重表的位置,并赋值给m

                visited[m]=1;//标记为已遍历

                p=G.g[m].firstedge;//将该位置下的第一个表结点的位置给p

                DFSTraverse(G,m,visited); break;//深度遍历图并输出序列

            case 2:

                BFSTraverse(G);break;//广度遍历图并输出序列

            case 3://深度遍历并输出生成树的边集

                scanf(a);

                m=Locate(G,a);s[m]=1;

               p=G.g[m].firstedge;

               if(p->ivex==m){

                    DFSTree(G,p->jvex,s,m);}

               else{

                   DFSTree(G,p->ivex,s,m);}break;

            case 4:

                BFSTree(G,s); break;//广度遍历并输出生成树的边集

            default: break;

        }

        fflush(stdin);

        scanf(b);

    }while(b=='y'||b=='Y');

    return 0;

}