c# - 寻找图中节点对之间的 K 最短路径?

标签 c# java c algorithm graph

有谁知道求k-最短路径的算法吗,我在网上搜了一下,找到了Yen的,但是太复杂了?

非常感谢。

最佳答案

它无法有效地完成(多项式)1 - 问题是 NP-Hard

这样想 - 通过在 [1,n!] 范围内进行二分搜索,您甚至可以找到 k 最短路径的长度(这里假设简单路径)多项式k,可以查找是否有hamiltonian path在图中(通过查找长度为 n 的路径)。

hamiltonian path problem是 NP-Hard,这个问题也是 NP-Hard,并且没有已知的多项式解。

<小时/>

(1)可能,除非 P=NP ,但大多数计算机科学研究人员认为这不太可能

关于c# - 寻找图中节点对之间的 K 最短路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14434731/

相关文章:

c# - 定时器的资源消耗有多大?

java - 去除 SeekBar 阴影

java - 将操作方法​​添加到动态创建的组合中

c - 为c设置netbeans

c# - 将引用存储在另一个变量中

c# - 可以在 WPF 中使用与 XAML 2009 相关的标记扩展吗?

c# - WCF:CustomBinding 混淆端点

Java ArrayList Deck 类

c - 反转一条线

c - 算术测验在减法和除法循环中崩溃并且进程返回-1073741819