如何判断链表是否有环


方法1:采用快慢指针

/***************************** 函数名称:JudgmentLinkRing_1(PtrList list)* 功能描述:判断链表是否有环* 传入参数:PtrList list  待判断的链表* 返回值: true   有环*          false  无环 * 方法:比较快慢指针***************************/
bool JudgmentLinkRing_1(PtrList list)
{PtrList p1,p2;p1 = p2 = list;while(p1->next != NULL && p2->next->next != NULL){p1 =p1 -> next;p2 = p2 -> next ->next;if(p1 == p2){return true;}}return false;
}

方法2:采用比较步数是否相等

/***************************** 函数名称:JudmentLinkRing_2(PtrList list)* 功能描述:判断链表是否有环* 传入参数:PtrList list  待判断的链表* 返回值: true   有环*          false  无环 * 方法:比较步数***************************/
bool JudmentLinkRing_2(PtrList list)
{PtrList p1 = list;int num1 = 0,num2 = 0;PtrList p2 = list;while(p1){while(p2){if(p1 == p2){if(num1 == num2){break;}else{return true;}}p2 = p2 -> next;num2++;}p1 = p1 -> next;num1++;}return false;
}

数据结构-链表(判断链表是否有环)相关推荐

  1. LeetCode141. 环形链表判断链表是否有环

    题目要求 原题目链接:141. 环形链表 题目要求如下: 给你一个链表的头节点 head ,判断链表中是否有环. 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环. 为了 ...

  2. 数据结构 - 如何判断两个无环单链表是否相交;如果相交,给出相交的第一个结点

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 比较好的 ...

  3. 链表--判断链表中是否有环

    题目: 判断给定的链表中是否有环.如果有环则返回true,否则返回false. 数据范围:链表长度 0≤n≤10000,链表中任意节点的值满足 ∣val∣<=100000 要求:空间复杂度 O( ...

  4. 数据结构初阶(4)(OJ练习【判断链表中是否有环、返回链表入口点、删除链表中的所有重复出现的元素】、双向链表LinkedList【注意事项、构造方法、常用方法、模拟实现、遍历方法、顺序表和链表的区别)

    接上次博客:数据结构初阶(3)(链表:链表的基本概念.链表的类型.单向不带头非循环链表的实现.链表的相关OJ练习.链表的优缺点 )_di-Dora的博客-CSDN博客 目录 OJ练习 双向链表--Li ...

  5. 数据结构:单链表操作之如何判断链表是否带环及相关操作

    //判断链表是否有环 int HasCircle(Node* pHead) { Node* low=pHead; Node* fast=pHead;     while(fast != NULL &a ...

  6. 数据结构---判断链表是否有环

    判断链表是否有环 判断链表是否有环 方法1 方法2 JAVA实现 问题扩展1 问题扩展2 判断链表是否有环 有一个单向链表,链表中有可能出现"环",就像下图这样.那么,如何用程序来 ...

  7. java算法判断链表有没有闭环_前端算法系列之二:数据结构链表、双向链表、闭环链表、有序链表...

    前言 上一次我们讲到了数据结构:栈和队列,并对他们的运用做了一些介绍和案例实践:我们也讲到了怎么简单的实现一个四则运算.怎么去判断标签是否闭合完全等等,anyway,今天接着和大家介绍一些数据结构: ...

  8. 如何判断链表有环、如何判断两个链表相交

    如何判断单链表是否存在环 有一个单向链表,链表当中有可能出现"环",就像题图这样.如何用程序判断出这个链表是有环链表? 不允许修改链表结构. 时间复杂度O(n),空间复杂度O(1) ...

  9. 链表之判断链表是否有环

    描述 判断给定的链表中是否有环.如果有环则返回true,否则返回false. 数据范围:链表长度 0≤n≤10000,链表中任意节点的值满足 ∣val∣<=100000 要求:空间复杂度 O(1 ...

最新文章

  1. 21年最新Python面试题及答案汇总详解(上)
  2. Github for windows
  3. pynvml 多gpu不能显示
  4. 【问题】14500充电锂电池电量问题及测试方案
  5. python基础——迭代器与生成器
  6. elasticsearch+kibana
  7. java 反射api_反射是最重要的Java API
  8. Android studio中提交svn一直卡在performing VCS commit
  9. 品质LOGO模板素材|想知道平面设计师如何设计徽标的秘密吗?
  10. 系统学习机器学习之神经网络(三)--GA神经网络与小波神经网络WNN
  11. java猫和猫的名字
  12. 在B/S开发中经常用到的javaScript技术(转载)
  13. 软考-系统分析师知识大纲及分数
  14. 微信小程序自定义弹窗
  15. java秒杀源码_Java秒杀系统实战系列~商品秒杀代码实战
  16. Unity3d 场景搭建 基础 学习
  17. CLASST T 使用
  18. C语言实现画爱心(两种方式画法)
  19. 力扣(LeetCode)个人主页draw()方法怎么画出好看图案? // 使用函数 draw 绘制图形,反斜杠 “\“ 请使用 “\\“ 转义
  20. Android 实现一个计时器

热门文章

  1. 转载:23种设计模式整理(很全)
  2. 艰难转行------程序员
  3. 制作gif动图python_制作gif动图python-女性时尚流行美容健康娱乐mv-ida网
  4. Error 1044: Access denied for user ‘syz-remote‘@‘%‘ to database ‘webapp‘
  5. tf.keras.activation.selu()
  6. 浅谈APS精益生产排程六大要素
  7. pipe建模工具使用_PDMS进行管道建模的一些方法及操作技巧,快来Get!
  8. 蚂蚁金服总裁胡晓明:科技如何驱动金融从离线走向在线
  9. win10电脑编程小程序服务器,微信PC版更新 电脑也可以玩小程序
  10. 电压源逆变器的死区现象