你和佩德罗·帕斯卡之间隔几层人脉?图搜索实用入门
来源:dev.to — 2026-08-12 · 8 min 阅读
📋 概述
作者用「我离佩德罗·帕斯卡有多少层介绍」这个好玩的问题,把社交网络抽象成一张无向无权图:每个人是一个节点,认识关系是一条边,问题就变成「求两节点间的最短路径」。文章由此自然地引出广度优先搜索(BFS),解释了为什么盲目的随机游走既没有顺序也没有终止条件,而 BFS 用队列一层层向外扩展、用 visited 集合防止死循环,最终能找到最短介绍链。这是把生活问题映射为经典算法问题的一篇清晰入门。
🔑 核心要点
- 把社交关系建模为无向无权图,节点是人、边是认识关系。
- 核心问题从「怎么认识佩德罗」转化为「求两节点最短路径」。
- 随机游走不是算法:没有顺序、没有记忆、没有终止条件,容易陷入死循环。
- BFS 用队列逐层扩展,配合 visited 集合避免重复访问。
- 用邻接表表示图是工程里最简洁直观的入门方式。
💡 金句
我们无意中发明了一个图问题——把你的社交生活变成一张图。
👍 0
👎 0
← 返回 dev.to 首页