八数码 IDA* A *比较总结 HDU1043 POJ1077

这是一个经典的搜索题,做法很多可以详见此题的八境界做法,这里只阐述A*与IDA*算法。 A*算法: 简单来说是带估值函数的广搜。不同之处在于:对每个放入队列(open table)的节点计算估值函数h(x),然后进行排序。这样出队时的顺序就不是自然顺序,而是有导向性的一个顺序,这样可以...

2019-03-17 23:41:33

阅读数 23

评论数 0

hdu1495 隐式图bfs

题意:中文思路:这道题思路还是比较明显的,不过有几个地方可以剪枝,降低复杂度。初始状态(s,0,0)目标状态(1/2s,1/2s,0)。每次操作其实无非(s->a,s->b,a->b,a->s,b-&a...

2018-03-29 13:35:38

阅读数 52

评论数 0

uva1599 双向bfs+路径字典序输出

题意:紫书上有。思路:首先逆向bfs一遍,求出其他所有点到终点的最短距离。然后正着bfs一遍,每次选择和当前节点到终点距离少1的点,且更新这一步的所选择的颜色。第二个bfs参考别人的代码,有一个非常巧妙地写法:用path【i】表示,走第i步时所选择地最小颜色。这样打印路径直接按照步数打印就可以了(...

2018-03-11 16:40:37

阅读数 102

评论数 0

poj3414 bfs+路径打印

題目大意:给出2个水杯和目标的容量,输出经过fill drop pour三种操作的最少步数。 这题思路还是比较清晰的,可是就是不知为什么mle了,找不出来问题,先码着放这里,有空回来看。 mle: #include #include #include #include #include #i...

2018-01-19 10:06:12

阅读数 87

评论数 0

三维bfs

poj2251 其实和普通的bfs没有太大区别,就多了上下两个方向,不过初始化数组时一定要注意哪一维对应那一层。 #include #include #include #include #include #define inf 0x3f3f3f3f using namespace std; c...

2018-01-14 02:56:12

阅读数 124

评论数 0

图的色数问题整理(未完待续......)

最近离散在讲图的色数问题,顺便做了几道题。前面两道题代码主要参考刘汝佳的紫书的dp。后面一题为cf上的求三个链节点的图的色数(前面只是两个相邻节点),用dfs或者bfs遍历全图实现。具体下面分析。 先是poj的1129,可以说是两个邻接点的图的色数的裸题。数组讲道理应该开到1 代码: #in...

2017-12-18 11:42:18

阅读数 675

评论数 0

uva816 abbots的复仇 bfs+方向朝向

#include #include #include #include #include #include #include using namespace std; const int maxn=10; const char* dir="NESW";///不能是(NEWS),...

2017-11-14 15:40:55

阅读数 143

评论数 0

比较重量(华为面试题改)链式前向星的使用+bfs

链接:https://www.nowcoder.com/questionTerminal/ac27e60e63b549d6a9b59f815d9bc6e2 来源:牛客网 小明陪小红去看钻石,他们从一堆钻石中随机抽取两颗并比较她们的重量。这些钻石的重量各不相同。在他们们比较了一段时间后,它们...

2017-09-21 21:56:58

阅读数 212

评论数 0

uva1600 (bfs迷宫)

先贴上AC代码 #include #include #include #include #include using namespace std; const int maxn=30; const int block=1; int maze[maxn][maxn]; int r,c,k; int...

2017-09-16 10:09:07

阅读数 145

评论数 0

UVA816 紫书bfs

本题比较困难的地方对于我来说应该是输入,后来参考了别人的代码原来还有stringstream这么好用的东西 还有就是方向的处理上面,lrj的方法比较巧妙,他是把方向全部转化成0-3然后一一对应数组中的元素  #include//不需要判断边界、移动方向已经确定 #include #includ...

2017-08-27 22:36:54

阅读数 136

评论数 0

提示
确定要删除当前文章?
取消 删除