【发布时间】:2014-12-08 15:27:45
【问题描述】:
我的问题是:是否可以使用 Cypher 实现 Dijkstra 算法? neo4j网站上的解释只讲了REST API,对于我这样的初学者来说很难理解
请注意,我想找到两个节点之间距离最短的最短路径,而不是两个节点之间的最短路径(涉及最少数量的关系)。我知道使用 Cypher 很容易实现的 shortestPath 算法,但它不符合我的目的。
如果我有一个带有节点的图形数据库,以及具有“距离”属性的节点之间的关系,请指导我如何进行操作。我想要的只是编写一个代码,借助它我们将能够找出数据库中两个节点之间的最短距离。或者如果我需要改变我的方法并为此使用其他程序有什么提示?
【问题讨论】:
-
有一个与此相关的recent question,也许有帮助。
-
是的,我问了这个问题,我收到的答案是正确的,因为我可以获得最短路径(最少的关系)和节点之间的距离总和......但是什么我正在寻找的是最短的路径(最小的“距离”),所以我必须提出另一个问题来澄清这一点
-
这里的“距离”是什么意思?您的关系中是否有一些属性表示两个节点之间一个关系“跳跃”的距离?
-
是的,完全正确。每个关系都有一个称为距离的属性