用DFS求联通块 【分析】图也可以有dfs,bfs遍历。由于dfs更容易编写,一般用dfs找联通块:从每个'@'格子出发,递归遍历它周围的'@'格子每一次访问到一个就给它写上“联通分量编号”即下面的idx数组。这样就可以在访问之前知道是否已经被访问过,从而避免一个格子被访问多次。 上面的代码用一个二 ...
分类:
其他好文 时间:
2018-02-15 19:28:40
阅读次数:
179
用DFS求联通块 【分析】图也可以有dfs,bfs遍历。由于dfs更容易编写,一般用dfs找联通块:从每个'@'格子出发,递归遍历它周围的'@'格子每一次访问到一个就给它写上“联通分量编号”即下面的idx数组。这样就可以在访问之前知道是否已经被访问过,从而避免一个格子被访问多次。 上面的代码用一个二 ...
分类:
其他好文 时间:
2018-02-15 19:14:40
阅读次数:
190
#define maxnum 30 #include<bits_stdc++.h> int visited[maxnum]={0}; using namespace std; typedef struct bian//边 { int mark;//标记是否搜索 int ivex,jvex;//两顶点 ...
分类:
其他好文 时间:
2018-02-12 11:27:24
阅读次数:
189
#include<iostream>#include<queue>using namespace std;struct Point{ int x; int y; };queue<Point>que;int sum=0;int a[3][4]={0};//代表取了哪几个数 int visited[13 ...
分类:
其他好文 时间:
2018-01-22 22:53:37
阅读次数:
162
题目大意:国际象棋给你一个起点和一个终点,按骑士的走法,从起点到终点的最少移动多少次。 求最少明显用bfs,下面给出三种搜索算法程序: DFS: 注意visited结点,如果步数较小也继续搜索 A*算法: g函数为沿路径从起点到当前点的移动耗费(经过的步数),启发函数h为当前格子到终点横坐标差与纵坐 ...
分类:
其他好文 时间:
2018-01-18 17:07:00
阅读次数:
146
http://poj.org/problem?id=2631 树的直径裸题 dfs/bfs均可 ...
分类:
其他好文 时间:
2018-01-14 13:07:54
阅读次数:
158
spfa判断负环 给出T组数据,其中有一个n点m边的图,问每个数据是否存在负环。N,M,|w|≤200 000。 spfa如何判断负环呢?只要枚举每一个点,然后dfs/bfs更新即可,具体看代码。现在我要证明的是为什么它是正确的。 它的基本思想是:如果找到一个点x,能更新自己,那么就存在负环。然而有 ...
分类:
其他好文 时间:
2017-12-05 17:35:44
阅读次数:
104
链接 : "Here!" 思路 : 搜索判断连通块个数, 所以 $DFS$ 或则 $BFS$ 都行喽...., 首先记录一下整个地图中所有$Oil$的个数, 然后遍历整个地图, 从油田开始搜索它所能连通多少块其他油田, 只需要把它所连通的油田个数减去, 就ok了 c++ / File Name: E ...
分类:
其他好文 时间:
2017-11-27 11:04:35
阅读次数:
136
首先是dfs和bfs的使用不熟练; 对这一次考试没有足够的重视,(比如玩了玩扫雷,纸牌啦,什么的...=_=|||)so浪费了比较多的时间; 然后是太自信了(?),一心想着比较复杂的思路,(不知道哪里来的自信就是)觉得自己一定能做出来,最后调试的时候才发现偏的有点离谱→_→; 忘了骗分=_=|||; ...
分类:
其他好文 时间:
2017-11-16 14:23:33
阅读次数:
127
引言 现在互联网的招工流程,算法题是必不可少的,对于像我这种没搞过ACM的吃瓜群众,好在有leetcode,拯救我于水火。于是乎,断断续续,刷了一些题,其中一些题还是值得细细品味的,现把一些问题整理一下,有些解法是我自己写的,也有些解法是参考了discuss中的答案,当做是秋招的一个小小总结。由于水 ...
分类:
编程语言 时间:
2017-11-10 20:19:33
阅读次数:
187