8、图遍历:概念、步骤与 Gremlin 实现

图遍历:概念、步骤与 Gremlin 实现

1. 图遍历的基础准备

在进行图遍历之前,我们需要明确一些关键的图结构元素。首先是与顶点相连的边标签,在某些模型中,比如这里的社交网络模型,边标签可能只有“朋友(friends)”这一种。接着要确定边的方向,这有助于我们在有向图中明确遍历的路径。不过在一些情况下,边的方向可能并不重要,例如当边是从一个顶点指向自身(循环边)时。

这些明确的图结构元素是后续规划和编写遍历操作的基础。当我们清晰地定义了业务问题并深入理解了使用场景后,合理的逻辑模型和确定的图结构元素将有助于我们编写有效的遍历操作。如果在编写遍历操作以解决使用场景问题时遇到困难,可能意味着在数据建模过程中遗漏了某些重要信息。

2. 规划图数据遍历步骤

以社交网络图数据为例,我们来解决“谁是 Ted 的朋友”这个问题。具体步骤如下:
1. 确定起始点 :在图中找到 Ted 顶点作为遍历的起始点。
2. 寻找朋友 :从 Ted 顶点出发,通过与之相连的“朋友(friends)”边找到对应的顶点。需要注意的是,这里的边具有方向性,“谁是 Ted 的朋友”指的是 Ted 主动添加为朋友的人,所以我们只沿着从 Ted 顶点出发的“朋友”边进行遍历,而不是指向 Ted 顶点的边。
3. 完成遍历 :沿着选定的边到达另一个顶点,这个顶点对应的人就是 Ted 的朋友。

下面是这个过程的 mermaid 流程图:

graph L
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值