文章目录 1.概述 2.题目 2.1 方法1: 2.2 方法2: 2.2.1 算法 3.解题思路 4.问题扩展 4.1 求出环的长度 4.2 扩展问题2:求出入环节点 4.3 求环长度代码 4.4 求出入环的节点 1.概述 本文摘抄自 漫画算法:小灰的算法之旅.pdf 并且补充。 2.题目 有一个单向链表, 链表中有可能出现“环”, 就像下图这样。 那么, 如何用程序来判断该链表是否为有环链表呢? 2.1 方法1: 首先从头节点开始, 依次遍历单链表中的每一个节点。 每遍历一个新节点, 就从头检查新节点之前的所有节点, 用新节点和此节点之前所 有节点依次做比较。 如果发现新节点和之前的某个节点相同, 则说明该节点被遍历过两次, 链表有环; 如果之前的所有节点中不存在与新节点相同的节