- 博客(5)
- 资源 (4)
- 收藏
- 关注
转载 八数码问题使用HashTable优化查找后的版本
在《双向广度优先搜索算法框架及八数码问题例程》一文中,给出了使用双向广度优先搜索算法解决八数码问题的一个简单版本,查找都是线性的,没有优化。这里给出使用HashTable优化后的版本!/* * Author: puresky * Date: 2010.01.12 * Purpose: solve EIGTH NUMBER problem! */#includ
2012-02-27 20:03:48 751
转载 双向广度优先搜索算法框架及八数码问题例程
双向广度优先搜索算法是对广度优先算法的一种扩展。广度优先算法从起始节点以广度优先的顺序不断扩展,直到遇到目的节点;而双向广度优先算法从两个方向以广度优先的顺序同时扩展,一个是从起始节点开始扩展,另一个是从目的节点扩展,直到一个扩展队列中出现另外一个队列中已经扩展的节点,也就相当于两个扩展方向出现了交点,那么可以认为我们找到了一条路径。双向广度优先算法相对于广度优先算法来说,
2012-02-27 20:03:10 1313
转载 用 A* 解决八数码问题
#include 8 s% W2 b- F3 j$ Y4 o#include 3 _ h, ^$ P9 ?/ ?#include using namespace std;9 S+ n& Q g R4 y#define HEAP_PARENT(i) (i >> 1); n- q# z9 x0 {. O
2012-02-27 20:02:06 923
转载 八数码问题(A*&&双向BFS)
题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=217 首先说一下八数码问题的可解性。 1.互换2个非零位置,状态的逆序奇偶性将保持不变。 2.互换0和另一个非零位置,状态的逆序奇偶性将发生颠倒。 3.因此,如果目标状态和起始状态的逆序奇偶性
2012-02-27 19:58:45 932
转载 八数码问题源代码
题目描述:八方块移动游戏要求从一个含8个数字(用1-8表示)的方块以及一个空格方块(用0表示)的3x3矩阵的起始状态开始,不断移动该空格方块以使其和相邻的方块互换,直至达到所定义的目标状态。空格方块在中间位置时有上、下、左、右4个方向可移动,在四个角落上有2个方向可移动,在其他位置上有3个方向可移动。例如,假设一个3x3矩阵的初始状态为: 8 0 3 2 1 4 7
2012-02-27 19:56:48 1224
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人