Mr.Chan

导航

Dijkstra algorithm 算法


1.把自己列入path列表,并且距离是0,下一跳也是自己,自己就是spf树的根节点
2.从path列表取出刚放入的节点,这个节点称为路径节点(path node),查找路径节点的邻居列表,把列表中的每一个邻居放入tent列表,下一跳都设置为path结点,除非该邻居已经在tent或者path列表中,并且代价较小,把加入tent列表的结点称为tent结点,把到达tent结点的代价设置为从根结点到path结点的代价加上从path结点到tent结点的代价之和,如果加入的结点在tent列表中已经存在,但是代价较大,就用当前的结点取代代价较高的结点.
3.在tent列表中找到代价最低的邻居,把邻居加入到path列表中,重复第二步,如果tent列表为空,就停止.

posted on 2005-04-04 09:55  cunshen  阅读(441)  评论(0编辑  收藏  举报