
单源点最短路径算法在(有向)带权图中的Java实现
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本项目实现了单源点最短路径算法在有向带权图中的Java语言编程实践,旨在解决路径优化问题,适用于网络路由、地图导航等领域。
/* * (有向)带权图的单源点最短路径算法 */
package dsa;
public class BestFSDijkstra extends BestFS {
// 构造方法
public BestFSDijkstra(Graph g) {
super(g);
}
// 更新尚未访问的顶点到源点的最短距离
protected void updateDistanceAfter(Vertex v) {
for (Iterator it = v.outEdges(); it.hasNext();) {
// 检查与顶点v相联的每一顶点w及其边(v, w)
Edge e = (Edge)it.getNext();
Vertex w = (Vertex)e.getVPosInV(1).getElem();
int weight = ((Integer)e.getInfo()).intValue();
if (w.getDistance() > v.getDistance() + weight) {
// 取原距离与新计算的距离中的较小值
w.setDistance(v.getDistance() + weight);
w.setBFSParent(v);
}
}
}
}
全部评论 (0)


