如何修改Dijkstra列出两个节点之间的所有简单路径 - 根据简洁性? [英] How do I modify Dijkstra to list all simple paths - according to shortness - between two nodes?

查看:83
本文介绍了如何修改Dijkstra列出两个节点之间的所有简单路径 - 根据简洁性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

相应地使用Dijkstra伪代码 http://en.wikipedia.org/wiki/Dijkstra%27s_algorithm#Pseudocode [ ^ ],如何修改它列出所有简单路径,根据简短?

解决方案

请参阅我对答案的评论。当您使用C ++时,您可以在每次计算路径时将虚拟伪抽象函数添加到算法中。在基类中,它什么都不做,而且,在某些派生类中,你可以实现将路径添加到某个列表或其他任何列表。



- SA

Working accordingly to the Dijkstra pseudocode http://en.wikipedia.org/wiki/Dijkstra%27s_algorithm#Pseudocode[^], how would one modify it to list all simple paths, according to shortness?

解决方案

Please see my comments to the answer. As you use C++, you could have virtual pseudo-abstract function added to the algorithm called every time the path is calculated. In base class, it would do nothing, and, in some derived class, you could implement adding the path to some list, or whatever else.

—SA


这篇关于如何修改Dijkstra列出两个节点之间的所有简单路径 - 根据简洁性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆