c# - 复杂路径

标签 c# algorithm math

                      L->|
  A -> B              ^  |
  |__> C -> D-> G->X--|  |
       K    |_> T  |  |_>Z
       |___________|

我希望这张小图能帮助传达我想要做的事情。

我有一个包含 7,000 个位置的列表,每个位置都有一个未定义但数量很少的门。每扇门都是两个位置之间的桥梁。

引用上图,我将如何找到从 A 到 Z 的最快路线?

我不需要完整的源代码,只需要伪代码就可以了。

显然你可以采用 A -> B ->C -> D -> G -> X -> L -> Z, 但最短路线是 A -> B -> C -> K -> X -> Z。

最佳答案

在图中将您的位置表示为节点,将门表示为边。然后应用一些相当标准的 shortest path algorithm(s)大功告成。

关于c# - 复杂路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1886096/

相关文章:

c# - 具有数据库优先方法的 Entity Framework Core 6.0 - 使用 include 时选择中的非必要列

algorithm - 我如何从一组项目中选择最有利的项目组合?

python - 如何使用 sympy 简化复杂常量的表达式?

c++ - 在 C++ 中查找数字的 n 次方根

c# - 用于使用 Entity Framework 存储许多实体(使用双外键)的地址的单个地址表

c# - 添加代码库作为引用而不是复制 Visual Studio

python - 类似 '%term%' 搜索的算法

algorithm - 遗传算法资源

c# - 使用 Math.Round 的舍入问题

c# - Web API 通用操作