题解:图的深度遍历就是顺着一个最初的结点开始,把与它相邻的结点都找到,也就是一直往下搜索直到尽头,然后在顺次找其他的结点。

#include <bits/stdc++.h>
using namespace std; int gra[200][200]; //储存图的大小
int vis[200]; // 标记数组 void dfs(int x,int k) // 有k个点,x代表目前搜到了那个点。
{
int i;
for(i = 0; i < k; i ++)
{
if(!vis[i] && gra[x][i]) // 如果和x这个点相连并且没有找过就是符合条件的
{
vis[i] = 1;
printf (" %d",i);
dfs(i,k); // 找与这个点相连接的
}
}
} int main()
{
int n, u, v, k, m, i;
scanf("%d",&n);
while(n--)
{
scanf("%d %d",&k, &m);
memset(gra, 0, sizeof(gra));
memset(vis, 0, sizeof(vis));
for(i = 0; i < m; i ++)
{
scanf("%d%d",&u, &v);
gra[u][v] = gra[v][u] = 1;
}
vis[0] = 1;
printf("0");
dfs(0,k);
printf("\n");
}
return 0;
}

er:

#include <bits/stdc++.h>
#include <iostream>
using namespace std;
int a[500][500];
int vis[450];
int f = 1;
void dfs(int t,int n)
{
vis[t] = 1;
if(f) f= 0;
else printf(" %d",t);
for(int i = 0; i < n; i ++)
{
if(!vis[i] && a[t][i])
{
vis[i] = 1;
dfs(i,n);
}
}
}
int main()
{
int n,k,m,t,u,v;
cin >> n;
while(n --)
{
cin >> k >> m;
memset(a,0,sizeof(a));
while(m --)
{
cin >> u >> v;
a[u][v] = a[v][u] = 1;
}
memset(vis,0,sizeof(vis));
f = 1;
printf("0");
dfs(0,k);
printf("\n");
}
return 0;
}

数据结构实验之图论二:图的深度遍历(SDUT 2107)(简单DFS)的更多相关文章

  1. SDUT 2142 数据结构实验之图论二:基于邻接表的广度优先搜索遍历

    数据结构实验之图论二:基于邻接表的广度优先搜索遍历 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Descript ...

  2. SDUT2142数据结构实验之图论二:基于邻接表的广度优先搜索遍历

    http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2142&cid=1186 题目描述 给定一个无向连通图,顶点编号从0到n-1,用广度优先搜 ...

  3. 数据结构实验之图论三:判断可达性(SDUT 2138)(简单DFS)

    #include <bits/stdc++.h> using namespace std; int gra[1002][1005]; int vis[1002]; int n,m; voi ...

  4. SDUT-2107_图的深度遍历

    数据结构实验之图论二:图的深度遍历 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 请定一个无向图,顶点编号从0到n-1 ...

  5. SDUT OJ 数据结构实验之图论十:判断给定图是否存在合法拓扑序列

    数据结构实验之图论十:判断给定图是否存在合法拓扑序列 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Prob ...

  6. 数据结构之 图论---图的深度遍历( 输出dfs的先后遍历序列 )

    图的深度遍历 Time Limit: 1000MS Memory limit: 65536K 题目描述 请定一个无向图,顶点编号从0到n-1,用深度优先搜索(DFS),遍历并输出.遍历时,先遍历节点编 ...

  7. SDUT 3363 数据结构实验之图论七:驴友计划

    数据结构实验之图论七:驴友计划 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 做为一个资深 ...

  8. SDUT OJ 数据结构实验之图论八:欧拉回路

    数据结构实验之图论八:欧拉回路 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descrip ...

  9. 数据结构实验之图论七:驴友计划 ( 最短路径 Dijkstra 算法 )

    数据结构实验之图论七:驴友计划 Time Limit: 1000 ms           Memory Limit: 65536 KiB Submit Statistic Discuss Probl ...

随机推荐

  1. (转) 嵌入式 Linux 利用 udev 实现自动检测挂载U盘

    本文链接:https://blog.csdn.net/cfl927096306/article/details/95180940 udev配置文件是/etc/udev/udev.conf,也许长这样: ...

  2. Linux权限管理:setUID、setGID 和 Sticky BIT

    1.setUID.setGID 和 Sticky BIT 的功能详解 setuid 功能: 1.只有可执行的二进制文件程序才能设定 SUID 权限(前提) 2.命令执行者要对该程序有执行(x)权限(必 ...

  3. shiro登录验证简单理解

    这两天接手了下师兄的项目,要给系统加个日志管理模块,其中需要记录登录功能的日志,那么首先要知道系统的登录是在哪里实现验证的. 该系统把所有登录验证还有权限控制的工作都交给了shiro. 这篇文章就先简 ...

  4. 在论坛中出现的比较难的sql问题:31(row_number函数+子查询 月环比计算)

    原文:在论坛中出现的比较难的sql问题:31(row_number函数+子查询 月环比计算) 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路.

  5. 基于MFC的网页ActiveX控件开发全程实录2(js向ActiveX控件传递参数)

    原文转自 https://blog.csdn.net/qianbin3200896/article/details/81452822 1.ActiveX控件部分(JS到ActiveX控件)继续上一篇博 ...

  6. 应用程序池优化配置方案(IIS7、IIS7.5)

    定义: 是将一个或多个应用程序链接到一个或多个工作进程集合的配置,该池中的应用程序与其他应用程序被工作进程边界分隔, 一.一般优化方案 1.基本设置 [1]队列长度:默认1000,将原来的队列长度65 ...

  7. C#插入时间

    //获取日期+时间 DateTime.Now.ToString(); // 2008-9-4 20:02:10 DateTime.Now.ToLocalTime().ToString(); // 20 ...

  8. C# 、子窗体调用父窗体属性、方法

    namespace Test { public partial class FrmMain : Form { public FrmMain() { InitializeComponent(); } p ...

  9. Pyhton模块和包

    一 模块 1.1 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用pytho ...

  10. [476] Database Mail is not enabled for agent notifications. Cannot send e-mail to

    配置完DB Mail后JOB的的通知邮件不能发送,日志报错476] Database Mail is not enabled for agent notifications. Cannot send ...