概述:本文主要讲述一些搜索算法的使用,以及其中奥妙思想的思考。 一:广度搜索与深度搜索---BFS与DFS 1:实现算法导论中的BSF #include #define MAX 1000000struct Node{ int d; int p; int color; int id;};int _tm...
分类:
其他好文 时间:
2014-07-16 23:08:16
阅读次数:
224
http://blog.csdn.net/morewindows/article/details/7481851对与 m n容量的水杯:怎么测量x容量的水;文章中说这不是最优的,但是可以找到存在答案;如果感兴趣搜索nyoj 倒水问题,这是bfs问题。对于每个杯子自己:可以倒空,或倒满,或者其他的杯子...
分类:
其他好文 时间:
2014-07-03 10:56:38
阅读次数:
199
题目:11198 - Dancing Digits
题目大意:每组数据给出8个数字,可能正可能负。要求最后将这8个数字按照数字绝对值从小到大的排序。排序的规则是让某个数字a邀请另一个数字b跳舞,这样a就可以插到b的左边或是右边,a能邀请b跳舞,则a* b
解题思路:这题一开始竟然想着dfs,但是后面发现,这样的判断树可以是无限大,因为可以a邀请完b,然后b在邀请a,这样一来一...
分类:
其他好文 时间:
2014-07-02 11:24:12
阅读次数:
160
题目链接:Find a Way
题目不难,前几天做,当时准备写双向BFS的,后来处理细节上出了点问题,赶上点事搁置了,今天晚上重写的,没用双向,用了两次BFS搜索,和双向BFS 道理差不多,只是这题有个小坑,需要注意
1.Y不能经过M,M不能经过Y,也就是说有Y和M的格子,可以默认为是墙
2.必须是Y和M都能到达的KFC才行,只是其中一个到达不行
例如下列数据;答案既不是22 也不...
分类:
其他好文 时间:
2014-07-02 08:13:15
阅读次数:
197
DFS 深度优先BFS 广度优先DFS或者BFS都是在联通区域内遍历节点的方法用在二叉树上DFS有preOreder,inOrder,postOrder,BFS就是层次遍历。在二叉树上的节点,只有两个选择,left 和right,即,对于每一个节点,in 有1个, out 有两个,有向图在矩阵的节点...
分类:
其他好文 时间:
2014-07-01 21:32:46
阅读次数:
278
题目地址:POJ2455
手残真浪费时间啊。。又拖到了今天才找出了错误。。每晚两道题不知不觉又变回了每晚一道题、。。sad。。
第一次在isap中忘记调用bfs,第二次则是遍历的时候居然是从1开始遍历的。。。sad。。。
这题思路倒是很简单,就是有一个比较坑的地方,就是这里的重边要当两条边来用,以前受最短路什么的影响,直接把慢的删了,很明显不对。。。这里的两条重边都是可以走的。
建图思路是...
分类:
其他好文 时间:
2014-07-01 14:44:29
阅读次数:
194
二叉树是一种常见的数据结构,二叉树的遍历也是家常便饭的事了,这里仅仅写出一个完整的可以运行的C++代码来随便建立一个如下图所示的二叉树,建一棵二叉树是实现二叉树各种操作的基础,下面的程序也很简单,这只是二叉树练习的开始,以后的博文中,将会紧紧围绕这棵二叉树练习更多的操作:如求二叉树的大小,二叉树的深度,翻转二叉树...,这里只是基础中的基础,只是为以后的学习做铺垫。...
分类:
编程语言 时间:
2014-07-01 09:02:45
阅读次数:
187
单广,双广都用了,感觉双向BFS,太棒了,HDU的这个题双向BFS时间优化的太棒了
有图,有真相!...
分类:
其他好文 时间:
2014-06-30 06:32:37
阅读次数:
171
本题解法很多,因为给出的数据特殊性故此可以使用DFS和BFS,也可以使用01背包DP思想来解。
这里使用BFS,缺点是比DFS更加耗内存,不过优点是速度比DFS快。
当然也比DFS难写点:
int N, B;
int Height[21];
inline int mMin(int a, int b) { return a > b? b : a; }
inline int mMax(int a...
分类:
其他好文 时间:
2014-06-28 08:11:26
阅读次数:
238