求图数据库中的关键路径java 实现算法
neo4j 有自己的方法啊,allshotestpath()和 shotestpath(),用法看官网api说明
看过官网了,allshotestpath()、shotestpath()、djkstar都是最短路径,关键路径是带权值的最长路径,官网没有这个算法
简单:查询所有路径,然后按照 权重总合 排序,最大的就是关键路径
MATCH p = (:node_label {name:start_name})-[:edge_label*]->(:node_label {name:end_name}) WITH p, REDUCE(x = 0, a IN relationships§ | x + a.time) AS cum_duration ORDER BY cum_duration DESC LIMIT 1 RETURN p