hdu 1043(搜索 + 康拓展开hash)
2017-10-26 10:46
120 查看
首先搜索大家都会,然后就是对于每一种状态进行判断是否之前走过了,这里就要用到hash,然后问题就转变为如何对这个3 ×3的方格进行hash了,我们都知道我们把x当成9的话,方程的数为1 ~ 9,那么我们就能用10进制来唯一表示每一种状态,但是我们会发现这样表示出来的数太大了,所以不采用这种hash方式。
然后就学了康拓展开:0!1!2!……9!表示每一位权值
对于一个排列,看这个数后边的有多少小于他的数,那么这一位上的权值就为它。
因为每一为都可以取0 ~ i(i是0 ~ 8),所以hash出来的值范围是0~n! - 1。
然后就学了康拓展开:0!1!2!……9!表示每一位权值
对于一个排列,看这个数后边的有多少小于他的数,那么这一位上的权值就为它。
因为每一为都可以取0 ~ i(i是0 ~ 8),所以hash出来的值范围是0~n! - 1。
相关文章推荐
- HDU-1043 Eight八数码 搜索问题(bfs+hash 打表 IDA* 等)
- poj 1077 hdu 1043 Eight 八数码问题 DBFS(双向广度优先搜索)a*算法 康拓展开
- HDU 1043 搜索 A*算法
- hdu 1043/poj 1077 Eight (八数码 经典搜索题 bfs + 康托展开)
- hdu 1043 eight (搜索 + 康托展开)
- bfs+hash poj 1077/hdu 1043 八数码问题
- hdu 1043(经典搜索)
- 【搜索进阶】hdu 1043 Eight
- hdu 1043 八数码 经典搜索问题 BFS+MAP
- HDU 1043 八数码问题 A*搜索
- HDU 1043 搜索+康托展开
- HDU 1043 && POJ 1077 Eight bfs || 双向bfs || A*搜索
- hdu 1043(经典搜索)
- 搜索专题小结(一)hdu 4634 1428 4277 1044 1043
- HDU 1043 八数码问题 A*搜索
- HDU 6046 hash(搜索标识)
- HDU 1043 八数码(经典搜索Astar+康托展开)
- POJ1077&HDU1043 Eight 八数码第七境界 AStar hash 康托展开 最小堆优化 奇偶剪枝
- POJ1077&HDU1043 Eight 八数码第八境界 IDA* hash 康托展开 奇偶剪枝
- POJ 1077 && HDU 1043 Eight A*算法,bfs,康托展开,hash 难度:3