- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
图算法题给你。
我有一张图,用来表示道路网络。所以其中有循环(环形交叉路口是微不足道的)。还有一些边缘是双向的,有些是单向的(单向街道)。边按其长度加权。
假设我有两个节点并且已经计算出它们之间的最短路径。我想做的是找到连接两个节点的所有其他路径,这些路径短于某个距离 X。将这些路径称为“备用”。
下面是一个 ascii 艺术的例子,我用字母标记了边,用数字标记了节点。
F
5----6
E / \ G
3--------4
/ D \
B / \ C
1--------------2
A
假设我有从 1->2 覆盖边 A 的路径,我想找到替代路径。该路径的一个替代方法是 BDC,前提是它的长度小于 X。BEFGC 是另一个。
另一个示例路径是连接节点 1->4 的 BD。另一个替代方案是 AC。
更多要求:
谢谢!
最佳答案
如果您运行 Dijkstra 算法来寻找最短路径,您将得到一个表,其中为每个节点提供了从源到该节点的最短距离。我会从图中删除最短路径上的点,运行 Dijkstra 算法,然后从目标开始进行深度优先搜索,每次你当前正在调查的路径成为一个循环时终止搜索,或者距离的总和当前节点到源点的路径和最短距离大于X。
每次实际到达源节点时,您都可以打印出到目前为止的路径。
关于algorithm - 找到所有短于给定距离的备选路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18668374/
注意:使用 jQuery 1.3.2(是的,我正在升级,但为此仍然需要 1.3.2) 寻找更好的方法来实现这一点 HTML 元素(这来自自定义 PHP 框架,更改起来非常麻烦): ... 1
我有一项服务可以提供大多数时间对用户可见的 UI。 当我遇到问题时,我正在尝试新的应用程序架构。 MyModelviewModel viewModel = ViewModelProviders.of(
在 C# 中,我有以下代码: string[] exampleStrings = Console.ReadLine().Split(' '); // C# int[] example
我是一名优秀的程序员,十分优秀!