• 深度遍历


    1. #include<stdio.h>  
    2. #include<string.h>  
    3.   
    4. int mark,k,m,map[101][101],vis[101][101],h[105];  
    5.   
    6. void seek(int mb)  
    7. {  
    8.     if(h[mb]) return;  
    9.     else h[mb] = 1;  
    10.     int i,j;  
    11.     if(mark)  
    12.     {  
    13.         printf("%d",mb);  
    14.         mark = 0;  
    15.     }  
    16.     else printf(" %d",mb);  
    17.     for(i = 1;i < k; i++)  
    18.     {  
    19.         if( (map[i][mb] && !vis[i][mb]) || (map[mb][i] && !vis[mb][i]))  
    20.         {  
    21.             vis[i][mb] = vis[mb][i] = 1;  
    22.             seek(i);  
    23.         }  
    24.     }  
    25. }  
    26. int main()  
    27. {  
    28.     int js,u,v,i;  
    29.     scanf("%d",&js);  
    30.     while(js--)  
    31.     {  
    32.         memset(map,0,sizeof(map));  
    33.         memset(vis,0,sizeof(vis));  
    34.         memset(h,0,sizeof(h));  
    35.         mark = 1;  
    36.         scanf("%d %d",&k,&m);  
    37.         for(i = 0;i < m; i++)  
    38.         {  
    39.             scanf("%d %d",&u,&v);  
    40.             if(u > v) map[u][v] = 1;  
    41.             else map[v][u] = 1;  
    42.         }  
    43.         for(i = 0;i < k; i++)  
    44.         {  
    45.             if(!h[i])  
    46.             {  
    47.                 seek(i);  
    48.             }  
    49.         }  
    50.         printf("\n");  
    51.     }  
    52.     return 0;  
    53. }  
  • 相关阅读:
    Mybatis 框架下 SQL 注入攻击的方式
    Vue 环境准备
    HTTP.sys漏洞的检测和修复(附补丁包下载)
    BPM工作流中的一些业务场景
    关系型数据库
    .NET中使用Redis总结——2.项目实战
    Java 开源项目整合
    在IIS 搭建FTP站点
    悲观锁和乐观锁详解
    C# 通过一个控制台打开另一个控制台
  • 原文地址:https://www.cnblogs.com/zmx354/p/2934067.html
Copyright © 2020-2023  润新知