Java版A星算法

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點擊打開鏈接


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章