【发布时间】:2015-02-11 17:09:07
【问题描述】:
我遇到了一个问题,我们想设计一种有效的算法来找到一条重量最轻的简单路径。 (具有最小权重的简单路径)。
我认为这不是多项式解决方案,但有朋友说可能是 O(n) 或 O(n^2) 或 O(n lg n) 会是......!
程序员或专家,会帮助我吗?任何伪代码?
编辑:
这个问题的输入是一棵树 T,边上有整数权重。权重可以是负数、零或正数。路径的长度是路径中边的权重之和。如果没有重复的顶点,则路径是简单的。
输出:找到给定树中权重最小的简单路径。
【问题讨论】:
-
路径是什么?根节点 -> 任何叶节点?
-
亲爱的@RatulSharker,我们知道,我们想找到重量最轻的简单路径。路径的长度是边权重的总和。
-
在树中哪个是图?简单路径是路径是不通过同一顶点两次的路径?它是零长度路径,还是由最轻边缘组成的路径?可能有一些附加条件吗?
-
也许你是对的。
-
啊,明白了,路径可以由几个负权边组成,甚至一些正边,如果它们允许构建长的负权路径。
标签: algorithm data-structures graph tree shortest-path