【发布时间】:2014-08-28 08:41:55
【问题描述】:
我正在学习 Udacity 的在线算法入门课程。
在最后的评估中有一个问题如下:
在 Andrew Goldberg 的采访中描述的最短路径预言中, 每个节点都有一个标签,它是节点中其他一些节点的列表 网络及其到这些节点的距离。这些列表具有 属性:
(1) 对于网络中的任何一对节点 (x,y),它们的列表将有 至少有一个节点 z 是公共的
(2) 从 x 到 y 的最短路径将经过 z。给定一个图 G 这是一个平衡的二叉树,预处理图以创建这样的 每个节点的标签。注意每个标签中列表的大小 对于大小为 n 的图形,不应大于 log n。
The full question can be found here.
鉴于平衡二叉树的约束和大小不应大于 log n 的提示,直觉上似乎特定节点的标签将包含其所有父节点(以及可选的自身,如果它不是)一片叶子)。
但是问题中的一些额外的讲师注释添加了:
编写处理加权图的解决方案。注意测试 给定,所有边的权重都是 1 - 这不是特别 有趣。
所以我的问题是:
二叉树中两个节点之间的最短路径如何受到路径是否有权重的影响?
肯定在二叉树中,两个节点之间的最短路径是唯一的简单路径,并且不受任何加权的影响? (除非权重可以是负数并且路径不必简单,在这种情况下没有最短路径?)
我的基本解决方案适用于问题中提供的简单测试,但未能通过没有反馈的自动评分器。
我显然误会了什么,但是……
【问题讨论】:
标签: algorithm binary-tree shortest-path