摘要: http://poj.org/problem?id=1077八数码问题:由1,2,3,4,5,6,7,8,x组成一个3*3的矩阵,如1 2 34 x 5 6 7 8其中x可与其上,下,左,右相邻的元素互换,现问从给出状态出发到达以下状态:1 2 3 4 5 67 8 x需要对x进行怎样的位移操作,输出x的最少位移信息,若状态不可达,输出unsolvable分析:1.一个很容易的想法,即BFS,2.用康托展开将每个状态转化为整数,即可略过已访问点3.再用优先队列加以优化4.其实可以用A*加以优化,f(x) = g(x)+h(x),h(x)为当前状态中x所在位置到右下角位置的哈密尔顿距离(不过实际 阅读全文
posted @ 2011-03-02 21:45 AndreMouche 阅读(1737) 评论(0) 推荐(0)