判断链表中是否有环

如下图,如何判断链表中存在环路呢?

一种简单的方法描述:

  1. 设置两个链表指针p1和p2并指向链表,设置两个记录指针移动次数的变量c1和c2。
  2. 在循环中,p1每次移动2个位置,c1加2;p1每次移动一个位置,c2加1。
  3. 若是两个指针中任何一个值是0(到达链表末尾),则退出并且无环路;否则,判断两个指针值是否相等,如果相等则退出且有环路,否则,继续执行第2步。
相关推荐
50万马克的面包2 分钟前
数据结构:线性表 —— 顺序表与链表完整总结
数据结构·链表
鹿角片ljp4 分钟前
LeetCode 142:环形链表 II |HashSet 保底解 + Floyd 快慢指针找环入口
算法·leetcode·链表
Fairy要carry7 分钟前
初创实习-IMU模型
人工智能·算法·机器学习
a187927218317 分钟前
【算法】回溯算法(一):从一道 IP 题到万能模板
算法·leetcode·go·回溯·leetcode93·ip复原·算法讲解
鹿角片ljp11 分钟前
LeetCode 19:删除链表的倒数第 N 个节点复盘| dummy + 快慢指针
算法·leetcode·链表
白狐_79812 分钟前
408 数据结构|散列表构造题:开放定址法做题套路
数据结构·散列表
玖玥拾26 分钟前
LeetCode 290 单词规律
算法·leetcode·哈希算法·散列表
liliangcsdn38 分钟前
多空价差收益序列汇总统计的分析和代码示例
人工智能·算法·机器学习
啥都想学点的研究生1 小时前
一篇文章讲清楚:Adaboost算法与GBDT
人工智能·算法
runningshark1 小时前
CH-6图论基础-有向树
数据结构