Ruby 用Neo4jrb寻找最短路径
我正在使用rails的版本Ruby 用Neo4jrb寻找最短路径,ruby,neo4j,Ruby,Neo4j,我正在使用rails的版本4.0.0.rc.3,在计算两个节点之间的最短路径时遇到问题 我有单一类型的节点A和单一类型的关系R。我可以使用.rels找到直接关系,但不知道如何遍历图形(不使用密码)。我们在v3或v4中没有任何类或方法可以像2.3那样访问算法。您需要使用shortestPath函数编写密码 Neo4j::Session.query.match("(martin:Person),(oliver:Person), p = shortestPath((martin)-[*..15]-(o
4.0.0.rc.3
,在计算两个节点之间的最短路径时遇到问题
我有单一类型的节点
A
和单一类型的关系R
。我可以使用.rels
找到直接关系,但不知道如何遍历图形(不使用密码)。我们在v3或v4中没有任何类或方法可以像2.3那样访问算法。您需要使用shortestPath
函数编写密码
Neo4j::Session.query.match("(martin:Person),(oliver:Person), p = shortestPath((martin)-[*..15]-(oliver))").where(martin: { name: 'Martin Sheen' }).where(oliver: { name: 'Oliver Stone' }) .return(:p)
我不熟悉
Neo4jrb
,但是最短路径通常被重构如下:如果k
是在从I
到j
的最短路径上穿过的第一个节点,那么下一个穿过的节点将是在从k
到j
的最短路径上穿过的第一个节点。我相信所有最短路径算法都会产生从所有节点到节点j
的最短路径,而只需要从I
到j
的最短路径,这就是为什么可以用这种方法重建最短路径的原因。@CarySwoveland谢谢,但我对算法本身很熟悉。我只是不知道如何使用Neo4jrb
遍历路径中的节点并获取它们的属性?现在我只是得到每个节点的URL。我想访问他们的财产。