马上又要秋招了,赶紧复习下基础知识。这里复习下二叉树和图的深搜与广搜。从图的遍历说起,图的遍历方法有两种:深度优先遍历(Depth First Search), 广度优先遍历(Breadth First Search)。图搜索的经典应用走迷宫、N皇后、二叉树遍历等。遍历:定义按某种顺序访问“图”中所有的节点。...
分类:
其他好文 时间:
2014-08-24 12:58:32
阅读次数:
8475
题目:hdoj 4183 Pahom on Water
题意:题目有点长,读懂了就是个水的最大流,每次从789开始到400,走的话必须是两个圆相交而且频率递增的,每个点只走一次,求有没有满足这样条件的。
分析:题目读懂就比较水了。直接按照题目意思建图,初始点和结束点容量为2,其他点只走一次容量为1,然后求最大流。
AC代码:
#include
#include
...
分类:
其他好文 时间:
2014-08-24 11:44:42
阅读次数:
195
就当时最大流再次复习吧。。动手敲一下。。。经典解法不想说了。。这题主要是坑时间,10个提交7个tle。
环的判断,曾经用简单dfs方法,这次的就tle了!别人说要用很屌的dinic,我感觉自己dinic不可能超时,坚信是判断环慢了,于是学习了新断环的方法:删除点/边!从某点进去,若该点的所有边都遍历过还是无功而返,那么该店以后不用再进入了(这么简单的道感觉自己应该要想到啊!愚蠢啊!)开始时用只删...
分类:
其他好文 时间:
2014-08-23 23:01:41
阅读次数:
456
dfs判断欧拉图,红名选手的代码就是炫酷。
首先统计所有点的度数总和,而后对于这张图的特殊性——每个点最多只会有四条边,来标记当前边是否走过了。
若在一次DFS中,能遍历所有的节点则输出所有边长的gcd的大于1的约数集。
真心学习了。#include
#include
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-08-23 21:44:01
阅读次数:
228
题目链接:uva 10410 - Tree Reconstruction
题目大意:给定一个树的BFS和DFS,求这棵树。
解题思路:用栈维护即可。对应BFS序列映射出了每个节点和根节点的距离,遍历dfs序列,对当前节点和栈顶节点比较,如果该节点距离根节点更远,则说明该节点为栈顶节点个孩子节点,则记录后将节点放入栈中。否则弹掉栈顶元素继续比较。需要注意一点,即当元素与栈顶元素的距离值大...
分类:
其他好文 时间:
2014-08-23 15:26:11
阅读次数:
210
本题可以使用DFS直接爆搜出答案,不过这样类型的题目其实是个二分图的题解。
这个二分图,难不在Hungary算法,而是难在于建图。需要挺高的抽象思维的。
建图:
1 把同一行不被X分开的格子标同一个号码,被X分开的标下一个号码,这样做是为了缩点,不需要把所有的格子都分开标号,而且可以更方便建个更加小的图。
2 同理把同一列的格子标号
3 然后判断相同一个格子的行标号和列标号是有路径的,其...
分类:
Web程序 时间:
2014-08-22 23:53:19
阅读次数:
549
题意:从S出发到D停止,并且要在指定的时间t走到(不早不晚)。注意,每个‘.’只能走一次。
分析:DFS,但是用普通的dfs,TL, 所以要剪枝。我们可以想到,如果可以早到D点,但是D点周围有其他可以踩的点,并且可以观察到,从一个点(不是D点)到D点的距离(abs(x-dx)+abs(y-dy))是奇数的话,就要走奇数步,偶数的就走偶数步,()...
分类:
其他好文 时间:
2014-08-22 22:33:31
阅读次数:
254
es在查询时,可以指定搜索类型为QUERY_THEN_FETCH,QUERY_AND_FEATCH,DFS_QUERY_THEN_FEATCH和DFS_QUERY_AND_FEATCH。那么这4种搜索类型有什么区别?
分布式搜索背景介绍:
ES天生就是为分布式而生,但分布式有分布式的缺点。比如要搜索某个单词,但是数据却分别在5个分片(Shard)上面,这5个分片可能在5台主机...
分类:
其他好文 时间:
2014-08-22 21:13:59
阅读次数:
369
UVA 1462 - Fuzzy Google Suggest
题目链接
题意:要模拟谷歌的模糊搜索,先有一些文本,然后每次输入一个单词查询,这个单词可以进行最多ti次操作,每次操作可以删除一个字符,修改一个字符,或增添一个字符,问这样这个单词最多可以匹配多少个前缀
思路:先建好字典树,每个结点保存经过的次数,然后每次查询,就在字典树上进行dfs,对于找到的结点标记为2,路径标记...
分类:
其他好文 时间:
2014-08-22 21:09:29
阅读次数:
361
http://acm.hdu.edu.cn/showproblem.php?pid=4035
学到:
1、先判断是不是树,其实凡是有图的感觉的,都看边数==点数-1是不是成立
2、树有时候区分老子跟孩子还是有必要的,这道题就是,不过是在dfs的时候,传参数的时候多加个表示父节点的参数而已
3、一定注意,概率DP对精度真的要求很高 开始的时候写1e-8,WA了好几发,改了1e-10 A...
分类:
其他好文 时间:
2014-08-22 19:47:09
阅读次数:
212