作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试遍历图形以追踪特定节点的沿袭。我希望我的查询以广度优先模式生成该节点的前因。注意,每个节点可以有多个父节点。该图可以有很多层,我想查看给定节点的所有级别的结果。我正在尝试跟进 this配方,但遇到异常没有这样的属性:收集。我正在 gremlin 控制台版本 3.3 上尝试这个
最佳答案
使用 barrier()
步骤 ( Apache TinkerPop 3.3 docs )。例如:
gremlin> g.V().sideEffect{println "first: ${it}"}.barrier().sideEffect{println "second: ${it}"}.iterate()
first: v[1]
first: v[2]
first: v[3]
first: v[4]
first: v[5]
first: v[6]
second: v[1]
second: v[2]
second: v[3]
second: v[4]
second: v[5]
second: v[6]
Stephen 在这个 gremlin-users post 中给出了 BFS 的另一个很好的描述.
First, let's assume a Gremlin language without optimization - doing:
g.V().out().out()
will result in a depth first search. You can force BFS with barrier():
g.V().out().barrier().out()
which basically will force the step prior to drain before moving on to the next step.
关于graph - Tinkerpop/Gremlin 广度第一次遍历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46349887/
所以我有一个有向图,我添加了顶点和边。该图表示机场和它们之间的航类。当我运行广度优先或深度优先搜索以找到两个机场之间的路径时,我第一次得到了正确的答案,但是当我第二次使用完全相同的机场运行它时,它找不
我是一名优秀的程序员,十分优秀!