Neo4j中如何找到跳数最少的最短路径?

2024-01-08

我正在建模一个图表,其中节点是位置,边缘表示您可以从一个地方到达另一个地方。

这是拥有从一个地方到另一个地方可以采取的所有路线, 并且您可以通过不同的路线从一个地方到达另一个地方,因此我想要一个查询,该查询可以返回路线变化最少的最短路径。

比如我想从A到D,我有两条可能的路径:

(place {name: "A"})-[:FOLLOWS{route:""R1}]->(place{name: "B" })-[:FOLLOWS{route:""R4}]->(place{name:"C"})-[:FOLLOWS{route:""R2}]->(place{name:"D"})

(place {name: "A"})-[:FOLLOWS{route:""R1}]->(place{name: "B" })-[:FOLLOWS{route:""R1}]->(place{name:"F"})-[:FOLLOWS{route:""R2}]->(place{name:"D"})

在前两条路径中,两者的大小相同,但我想获取第二条路径,即路线变化最小的那条路径。

谢谢。


@DevBennett 的答案得到了最少数量的最短路径路线变更.

以最少的数量求出最短路径不同的路线,这就是问题的字面要求(但可能不是提问者真正想要的),您可以使用以下查询:

MATCH p=ALLSHORTESTPATHS((a:Place {name: "A"})-[:FOLLOWS*]->(d:Place{name:"D"}))
UNWIND RELATIONSHIPS(p) AS rel 
WITH p, COUNT(DISTINCT rel.route) AS nRoutes 
RETURN p, nRoutes 
ORDER BY nRoutes 
LIMIT 1;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Neo4j中如何找到跳数最少的最短路径? 的相关文章

  • 如何使用 PyQtGraph 提高速度并通过多个图分割数据?

    我正在使用 STM32 套件从串行端口读取数据 问题是我需要使用自己的时间戳来绘制 ADC 数据 这意味着 x 轴应该是我的 RTC 时间 使用毫秒 y 轴是 ADC 数据 有用于绘制串行端口的程序 但正如我所说 我需要为图表设置自己的时间
  • 如何用线条在一个Excel散点图中绘制多个分组数据

    我在 Excel 中的一张图表 带线的散点图 中绘制分组数据 按索引 时遇到一些困难 我将非常感谢您的帮助 我的数据分为三列 第一列是数据或组的索引 即每组数据的唯一编号 第二列是时间 第三列是数据 Group Time Data 1 1
  • 您将如何显示/布局企业应用程序之间的数据流?

    我的雇主是一家大型瑞士电信公司 我们有许多系统用于为不同任务传输数据 例如性能管理 故障管理 配置管理等 为了向 管理 尖头等 解释这些系统如何交互 我将有关数据流 格式 协议的信息收集到 数据库 逗号分隔的说服者 中 然后为 Graphv
  • neo4j:CYPHER查询节点的所有属性

    我们正在评估 Neo4J 的未来项目 目前只是尝试学习 Cypher 及其功能 但到目前为止 我认为应该非常简单的一件事却让我无法理解 我希望能够查看任何给定节点的所有属性及其值 在 SQL 中 会是这样的 select from Tabl
  • 是否有工具可以将 Neo4j 图转储为 Cypher 并从 Cypher 重新加载它?

    每个熟悉 MySQL 的人都可能使用过 mysqldump 命令 它可以生成代表 MySQL 数据库中的架构和数据的 SQL 语句文件 这些 SQL 文本文件通常用于多种用途 备份 播种副本 在安装之间复制数据库 将产品数据库复制到临时环境
  • iOS绘图3D图形库[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在搜索一个可以帮助我绘制 3D 图表的库 我想要类似的东西这一页 http www math uri edu bkaskosz fla
  • neo4j - 三个节点之间的关系

    我完全陌生Neo4j这些天我正在测试它 我遇到的一个问题是如何正确实现涉及 3 个不同节点的关系Spring Data 例如 假设我有 3 NodeEntitys User Tag and TaggableObject 正如你可以争论的那样
  • Cypher Neo4j 无法加载外部资源

    在 Windows 环境中 我尝试加载带有以下语句的 csv 文件 LOAD CSV WITH HEADERS FROM file E Neo4j customers csv AS row 它似乎无法正常工作并返回 无法加载外部资源 文件
  • Python igraph:从图中删除顶点

    我正在使用安然电子邮件数据集 并尝试删除没有 enron com 的电子邮件地址 即我只想拥有安然电子邮件 当我尝试删除那些没有 enron com 的地址时 一些电子邮件由于某些原因被跳过 下面显示了一个小图 其中顶点是电子邮件地址 这是
  • 如何将条形图的 XtickLabels 向左移动?

    我目前正在尝试创建频率直方图 为此 我必须创建一个条形图 条形图之间没有空格 然而 这集中于XTickLabels在酒吧的中间 由于它是一个直方图 我希望数值位于每个条形之间的线上 以便它可以直观地指示间隔 本质上 我需要将所有刻度标签移至
  • 用于图形操作的 Javascript 库

    有没有建议的 javascript 替代 pythonpygraph http code google com p python graph or NetworkX http networkx lanl gov 应该注意的是 可视化不是必需
  • 如何在iPhone应用程序中创建折线图? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • boost::graph 算法是否能够使用以前的解决方案更快地解决密切相关的新问题?

    我在下图中定义了最大流量问题 最初 所有四个边缘的容量均为 4 个单位 我求从 0 到 3 的最大流量值 答案是 8 沿路径 0 gt 1 gt 3 4 个单位 沿路径 0 gt 2 gt 3 4 个单位 以下代码创建图表并查找最大流量 i
  • Flot 0.8.2 折线图 - 颜色错误

    我正在使用 Flot 折线图并设置它们的颜色 我发现了一个奇怪的错误 在前 3 种颜色之后 绘图对所有其他线条使用最后一种颜色 这不是正确的行为 更有趣的是图例显示了正确的颜色 这是一个已知的错误 var dataSet label d1
  • 在skiena的书中给出的关于应用dfs在图中查找循环的代码中存在错误

    这是dfs的代码 bool processed MAXV 1 which vertices have been processed bool discovered MAXV 1 which vertices have been found
  • d3 树 - 有相同孩子的父母

    我一直在将代码从 JIT 转换为 D3 并使用树布局 我已经复制了代码http mbostock github com d3 talk 20111018 tree html http mbostock github com d3 talk
  • 计算 Adamic-Adar 的快速算法

    我正在研究图形分析 我想计算一个 N N 相似度矩阵 其中包含每两个顶点之间的 Adamic Adar 相似度 为了概述 Adamic Adar 让我从以下介绍开始 给定邻接矩阵A无向图的G CN是两个顶点的所有公共邻居的集合x y 两个顶
  • 构造映射不允许索引集合作为映射键?

    所以我正在尝试写一个答案这个问题 https stackoverflow com questions 29262918 cypher zip collections这对我来说似乎很有趣 什么鬼 我来试试 这是我想出的解决方案 对我来说这似乎
  • 如何使 R barplot 上的列标签变为斜体

    这可能是一个简单的问题 但是如何仅将条形图上的列标签设为斜体 而不是斜体x axis标签 但列标签是专门的 到目前为止我的代码是 bp barplot means names arg c CON TRI ylim c 0 120 ylab
  • 绘制点之间的所有线

    我有以下 R 代码 x lt c 0 01848598 0 08052353 0 06741172 0 11652034 y lt c 0 4177541 0 4042247 0 3964025 0 4074685 d lt data fr

随机推荐

  • 将标记添加到现有谷歌地图(无需刷新谷歌地图)[重复]

    这个问题在这里已经有答案了 我的网站上有一个谷歌地图 正在生产 几乎没有标记 我想知道是否可以在现有地图上添加标记而不刷新我的谷歌地图 这就是我所拥有的 我加载我的网页 谷歌地图显示带有标记 单击按钮后 我想在我的地图上添加一个标记 无需刷
  • 在Shiny中通过tabPanel打开URL

    我的尝试 library shiny ui lt fluidPage navbarPage Sales Dashboard id sales tab tabPanel Panel 1 Test Panel value Test panel
  • 函数式编程 - 避免匹配表达式中的可变和改变 int 值

    我刚刚开始进行函数式编程 我目前要开始的小项目是一场基本的口袋妖怪战斗 先写代码 再解释 let choosePokemon let mutable pokemon DemoData schiggy let msg Console Read
  • 按最大值或按总值标准化?

    我正在做一些涉及文档比较的工作 为此 我分析每个文档 并基本上计算某些关键字在每个文档中出现的次数 例如 Document 1 Document 2 Book gt 3 Book gt 9 Work gt 0 Work gt 2 Dolla
  • 如何在reactjs中将数据二进制转换为图像?

    我已经在尝试这个 但它仍然对我不起作用如何在reactjs中将二进制数据转换为图像 https stackoverflow com questions 41972435 how to convert the binary data to i
  • OpenMP 并行 for 循环几乎没有性能提升

    我正在学习如何在 C 中使用 OpenMP 作为 HelloWorld 练习 我正在编写一个计算素数的程序 然后我将其并行化如下 int numprimes 0 pragma omp parallel for reduction numpr
  • 将 SimpleMembership 与 EF 模型优先结合使用

    Can 简单会员制与一起使用EF 模型优先 当我尝试时 我在调用时收到 无法找到请求的 NET Framework 数据提供程序 WebSecurity InitializeDatabaseConnection 换句话说 我无法接到电话We
  • 使用 JavaScript 从元素中删除 CSS 类(无 jQuery)[重复]

    这个问题在这里已经有答案了 谁能告诉我如何仅使用 JavaScript 删除元素上的类 请不要用 jQuery 给我答案 因为我不会使用它 而且我对此一无所知 正确且标准的方法是使用classList 就是现在大多数现代浏览器的最新版本得到
  • cd 到以“-”破折号开头的目录[重复]

    这个问题在这里已经有答案了 我正在学习 Git 我的第一个任务是导航到我的项目所在的目录 不幸的是 我的文档主文件夹具有以下形式 folder1 出于排序目的 以及每次我进入时 cd folder1 我收到错误 bash cd 参数太多 在
  • 如何删除/重命名 SQL 中的重复列(不是重复行)

    当尝试从 Sybase 到 Microsoft SQL 执行 OPENQUERY 时 我遇到错误 通过以下方式获得的结果集中不允许有重复的列名 OPENQUERY 和 OPENROWSET 列名 PatientID 重复 我构建的查询根据相
  • 我们如何在 C# 中设置 Excel 图表的位置?

    我正在尝试从 C 生成 Excel 图表 图表是通过查找生成的 但它总是出现在屏幕的中央 如何设置图表的位置 Thanks 我的代码如下所示 Microsoft Office Interop Excel Workbook ebook Mic
  • Lisp 中 1 和 '1 有什么区别?

    我从来没有真正考虑过 Lisp 中的符号是否可以是数字 所以今天我尝试了一下 gt 1 1 gt 1 1 2 gt 1 1 2 gt define a 1 gt a 1 2 上面的代码是方案 但在 Common Lisp 和 Clojure
  • Django:为每个请求/表单生成新的 CSRF 令牌

    我们是否可以更改每个表单请求甚至每个请求的 CSRF 令牌 而不是一个活动会话的相同令牌 假设您有权访问request object from django middleware csrf import rotate token rotat
  • 获取特定类的所有对象

    我必须通过引用列出作为类实例的对象 class Foo class Foo1 obj1 new Foo obj2 new Foo obj32 new Foo1 我需要一个解决方案来获取 Foo 类实例的所有对象 你知道怎么做吗 获取类的所有
  • 无法使用 Appium 移动 Android SeekBar

    我有一个像这样的定制Android搜索栏 以及它可以移动到的位置 它从中间开始 我想先移动滑块 然后检查它是否已保存 我有一个使用 TouchAction 的方法 public void moveSeekBar WebElement see
  • 二叉搜索树相对于哈希表的优点

    二叉搜索树相对于哈希表有哪些优点 哈希表可以在 Theta 1 时间内查找任何元素 并且添加元素也同样容易 但我不确定相反的优势 没有人指出的一项优点是二叉搜索树允许您有效地进行范围搜索 为了说明我的想法 我想举一个极端的例子 假设你想要获
  • 在 Xml 映射中使用 Hibernate 设置创建和更新时间

    我正在使用 HibernateXml映射 我有一个有两个字段的实体创建日期 and 更新日期类型的timestamp 当实体被持久化和更新时 必须用当前的 UTC 时间填充 我知道 的存在 PrePersist and PreUpdate注
  • CMU Sphinx 4 - 5 pre alpha 安装指南

    CMU Sphinx 4 5prealpha 最新版本 有好的 最好是分步安装指南吗 我找不到任何内容 而且官方指南已经过时了 我一直在尝试按照这些步骤操作 但完成后我缺少 2 个 jar jsapi 和标签 如果我尝试从 eclipse
  • 如何使用脚本化管道方法在参数化构建中定义标签参数

    我正在尝试解决与此问题相同的问题 如何使用管道插件在特定节点上触发詹金斯构建 https stackoverflow com questions 38240943 how to trigger a jenkins build on spec
  • Neo4j中如何找到跳数最少的最短路径?

    我正在建模一个图表 其中节点是位置 边缘表示您可以从一个地方到达另一个地方 这是拥有从一个地方到另一个地方可以采取的所有路线 并且您可以通过不同的路线从一个地方到达另一个地方 因此我想要一个查询 该查询可以返回路线变化最少的最短路径 比如我