Java版A星算法

来源:互联网 发布:优化设计理论教材推荐 编辑:程序博客网 时间:2024/05/02 16:14
A星算法步骤:
 1.起点先添加到开启列表中
 2.开启列表中有节点的话,取出第一个节点,即最小F值的节点
   判断此节点是否是目标点,是则找到了,跳出
   根据此节点取得八个方向的节点,求出G,H,F值
   判断每个节点在地图中是否能通过,不能通过则加入关闭列表中,跳出
   判断每个节点是否在关闭列表中,在则跳出
   判断每个节点是否在开启列表中,在则更新G值,F值,还更新其父节点;不在则将其添加到开启列表中,计算G值,H值,F值,添加其节点
 3.把此节点从开启列表中删除,再添加到关闭列表中
 4.把开启列表中按照F值最小的节点进行排序,最小的F值在第一个
 5.重复2,3,4步骤

   直到目标点在开启列表中,即找到了;目标点不在开启列表中,开启列表为空,即没找到

l转至: http://www.cnblogs.com/xmmdream/archive/2011/12/12/2284627.html



http://hi.baidu.com/%BA%DA%B5%C4%B7%A2%D7%CF/blog/item/60e3483dce5bb8c29e3d62e0.html点击打开链接