如何使用Gremlin在一组N个顶点中包含的对中找到特定长度的所有路径

米歇尔·米凯利迪斯(Michail Michailidis)

我想有N个顶点作为输入,然后我想返回所有路径,直到这些N个顶点中所有对之间的特定长度为止。如何在Gremlin中完成?

一些解释-具有此图(以路径表示):

(n)-[r1]-(n1)-[r2]-(n2)-[r3]-(m)-[r5]-(n3)
(y)-[r4]-(n1)-[r2]-(n2)-[r3]-(m)-[r6]-(n4)

() node
-[]- relation

例如,这些应该是(n,m,y)中最长为3的路径

(n)-[r1]-(n1)-[r2]-(n2)-[r3]-(m)
(y)-[r4]-(n1)-[r2]-(n2)-[r3]-(m)
(n)-[r1]-(n1)-[r2]-(n1)-[r4]-(y)

这是我针对2个顶点的Gremlin示例:

g = new OrientGraph("remote:localhost/graphdb")
v = g.v('#12:110')
y = g.v('#12:109')
hops = 3
v
    .as('looop')
        .inE.has('label','EdgeClass')
        .outV.has('@class','NodeClass')
        .outE.has('label','EdgeClass')
        .inV.except([v]).dedup()
    .loop('looop'){it.loops<hops}{it.object.rid==y.rid}.path

谢谢

丹尼尔·库皮兹

这是使用Tinkergraph玩具图的示例:

gremlin> vertices = g.v(2,3,5).toSet()
==>v[2]
==>v[3]
==>v[5]
gremlin> vertices._().as("x").bothE().bothV().simplePath().loop("x") {it.loops <= 3} {it.object in vertices}.simplePath().path() {it} {it.label}
==>[v[2], knows, v[1], created, v[3]]
==>[v[2], knows, v[1], knows, v[4], created, v[3]]
==>[v[2], knows, v[1], knows, v[4], created, v[5]]
==>[v[3], created, v[4], created, v[5]]
==>[v[3], created, v[1], knows, v[2]]
==>[v[3], created, v[4], knows, v[1], knows, v[2]]
==>[v[3], created, v[1], knows, v[4], created, v[5]]
==>[v[5], created, v[4], created, v[3]]
==>[v[5], created, v[4], knows, v[1], created, v[3]]
==>[v[5], created, v[4], knows, v[1], knows, v[2]]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Gremlin的特定顶点中找到没有特定边的顶点?

来自分类Dev

如何使用LINQ从一组数字中找到n个项目的所有组合?

来自分类Dev

在有向图中找到具有权重限制的两个顶点之间的所有路径

来自分类Dev

找到从一个顶点到另一个顶点的所有路径

来自分类Dev

如何在退化树中找到所有从特定顶点开始的均等路径?

来自分类Dev

如何在一组点中找到最接近另一个点的点?

来自分类Dev

在图中找到确切长度和成本的所有路径

来自分类Dev

从一组数字中找到长度为3的所有组合,使得sum(combination)为0

来自分类Dev

在3D空间中的一组点中找到两个最远的点

来自分类Dev

在距原点的一组点中找到最小的距离

来自分类Dev

在距原点的一组点中找到最小的距离

来自分类Dev

从一组点中找到近似矩形

来自分类Dev

在R中的数字序列中找到具有特定长度的所有子序列

来自分类常见问题

如何使用gremlin将所有顶点连接到组中的至少两个其他顶点?

来自分类Dev

如何使用gremlin将所有顶点连接到组中的至少两个其他顶点?

来自分类Dev

如何找到有向图中2个特定顶点之间的所有可能路径中存在的顶点?

来自分类Dev

如何找到列表的所有路径?

来自分类Dev

如何在具有一组起点和目标点的图形中找到最长的路径?

来自分类Dev

如何在ArangoDB中的图形遍历期间消除通过特定文档或顶点的所有路径

来自分类Dev

如何找到以两个为一组的List的所有组合?

来自分类Dev

在有向图中找到两个特定顶点之间的所有节点

来自分类Dev

在有向图中找到两个特定顶点之间的所有节点

来自分类Dev

如何使一个递归函数在图中找到所有欧拉路径?

来自分类Dev

在networkx图中查找给定长度的所有路径/人行道

来自分类Dev

如何在一组脚本中找到包含列表中文本的条目?

来自分类Dev

在Rails 4中找到一组深层嵌套的子对象的所有父母的父母

来自分类Dev

有向图中所有其他顶点可到达的顶点或一组顶点

来自分类Dev

如何在JavaScript中根据一组特定位数的整数生成固定长度的代码

来自分类Dev

是否可以用一组每个包含4个或更多顶点的对象来实现A *路径查找?

Related 相关文章

  1. 1

    如何在Gremlin的特定顶点中找到没有特定边的顶点?

  2. 2

    如何使用LINQ从一组数字中找到n个项目的所有组合?

  3. 3

    在有向图中找到具有权重限制的两个顶点之间的所有路径

  4. 4

    找到从一个顶点到另一个顶点的所有路径

  5. 5

    如何在退化树中找到所有从特定顶点开始的均等路径?

  6. 6

    如何在一组点中找到最接近另一个点的点?

  7. 7

    在图中找到确切长度和成本的所有路径

  8. 8

    从一组数字中找到长度为3的所有组合,使得sum(combination)为0

  9. 9

    在3D空间中的一组点中找到两个最远的点

  10. 10

    在距原点的一组点中找到最小的距离

  11. 11

    在距原点的一组点中找到最小的距离

  12. 12

    从一组点中找到近似矩形

  13. 13

    在R中的数字序列中找到具有特定长度的所有子序列

  14. 14

    如何使用gremlin将所有顶点连接到组中的至少两个其他顶点?

  15. 15

    如何使用gremlin将所有顶点连接到组中的至少两个其他顶点?

  16. 16

    如何找到有向图中2个特定顶点之间的所有可能路径中存在的顶点?

  17. 17

    如何找到列表的所有路径?

  18. 18

    如何在具有一组起点和目标点的图形中找到最长的路径?

  19. 19

    如何在ArangoDB中的图形遍历期间消除通过特定文档或顶点的所有路径

  20. 20

    如何找到以两个为一组的List的所有组合?

  21. 21

    在有向图中找到两个特定顶点之间的所有节点

  22. 22

    在有向图中找到两个特定顶点之间的所有节点

  23. 23

    如何使一个递归函数在图中找到所有欧拉路径?

  24. 24

    在networkx图中查找给定长度的所有路径/人行道

  25. 25

    如何在一组脚本中找到包含列表中文本的条目?

  26. 26

    在Rails 4中找到一组深层嵌套的子对象的所有父母的父母

  27. 27

    有向图中所有其他顶点可到达的顶点或一组顶点

  28. 28

    如何在JavaScript中根据一组特定位数的整数生成固定长度的代码

  29. 29

    是否可以用一组每个包含4个或更多顶点的对象来实现A *路径查找?

热门标签

归档