判断链表中是否有环

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

一种简单的方法描述:

  1. 设置两个链表指针p1和p2并指向链表,设置两个记录指针移动次数的变量c1和c2。
  2. 在循环中,p1每次移动2个位置,c1加2;p1每次移动一个位置,c2加1。
  3. 若是两个指针中任何一个值是0(到达链表末尾),则退出并且无环路;否则,判断两个指针值是否相等,如果相等则退出且有环路,否则,继续执行第2步。
相关推荐
一个不知名程序员www3 小时前
算法学习入门 --- 哈希表和unordered_map、unordered_set(C++)
c++·算法
Sarvartha4 小时前
C++ STL 栈的便捷使用
c++·算法
夏鹏今天学习了吗4 小时前
【LeetCode热题100(92/100)】多数元素
算法·leetcode·职场和发展
飞Link5 小时前
深度解析 MSER 最大稳定极值区域算法
人工智能·opencv·算法·计算机视觉
bubiyoushang8885 小时前
基于CLEAN算法的杂波抑制Matlab仿真实现
数据结构·算法·matlab
曾经的三心草5 小时前
redis-2-数据结构内部编码-单线程-String命令
数据结构·数据库·redis
2401_894828126 小时前
从原理到实战:随机森林算法全解析(附 Python 完整代码)
开发语言·python·算法·随机森林
Remember_9936 小时前
【LeetCode精选算法】前缀和专题二
算法·哈希算法·散列表
源代码•宸6 小时前
Leetcode—509. 斐波那契数【简单】
经验分享·算法·leetcode·面试·golang·记忆化搜索·动规
博大世界7 小时前
matlab结构体数组定义
数据结构·算法