九宫格 数字移动 ~
关于这个程序,是用人工智能的搜索算法对于9宫格数字移动问题的求解。搜索算法采用盲目搜索的宽度优先,至于更好的启发式搜索,正 在思考中,理论上的思路有了,但是具体实现还在准备中。先讲下盲目搜索的宽度优先的算法,首先讲一个初始结点放入Open表中,A:然后 通过一个搜索算法取出Open表中一个结点,因为这里是宽度优先,其实也就是数据结构中树的层次遍历(本人一开始也是这么做的)。所以 也就是Open表中的第一个结点,取出之后进行比较是否为目标结点,是则找到,没有则扩展(在这个程序中,扩展就是将空格进行上,左, 下,右移动),扩展之后的结点放入Open表中,然后将已经进行扩展的结点放入Close表中。
用户评论