Python3实现的判断环形链表算法示例


Posted in Python onMarch 07, 2019

本文实例讲述了Python3实现的判断环形链表算法。分享给大家供大家参考,具体如下:

给定一个链表,判断链表中是否有环。

方案一:快慢指针遍历,若出现相等的情况,说明有环

# Definition for singly-linked list.
# class ListNode(object):
#   def __init__(self, x):
#     self.val = x
#     self.next = None
class Solution(object):
  def hasCycle(self, head):
    """
    :type head: ListNode
    :rtype: bool
    """
    slow = fast = head
    while fast and fast.next:
      slow = slow.next
      fast = fast.next.next
      if fast == slow:
        return True
    return False

方案二:遍历链表,寻找.next=head的元素。 但超出时间限制

# Definition for singly-linked list.
# class ListNode(object):
#   def __init__(self, x):
#     self.val = x
#     self.next = None
class Solution(object):
  def hasCycle(self, head):
    """
    :type head: ListNode
    :rtype: bool
    """
    if not head:
      return False
    cur = head.next
    while cur:
      if cur.next == head:
        return True
      cur = cur.next
    return False

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python实现的登陆Discuz!论坛通用代码分享
Jul 11 Python
python验证码识别的实例详解
Sep 09 Python
Python实现类的创建与使用方法示例
Jul 25 Python
详解python函数传参是传值还是传引用
Jan 16 Python
Linux(Redhat)安装python3.6虚拟环境(推荐)
May 05 Python
一些Centos Python 生产环境的部署命令(推荐)
May 07 Python
使用python将图片格式转换为ico格式的示例
Oct 22 Python
python如何删除文件中重复的字段
Jul 16 Python
python3 正则表达式基础廖雪峰
Mar 25 Python
Python错误的处理方法
Jun 23 Python
python 实现音频叠加的示例
Oct 29 Python
Python机器学习之逻辑回归
May 11 Python
浅析Python 读取图像文件的性能对比
Mar 07 #Python
python try 异常处理(史上最全)
Mar 07 #Python
通过shell+python实现企业微信预警
Mar 07 #Python
Python一个简单的通信程序(客户端 服务器)
Mar 06 #Python
用Python写一个模拟qq聊天小程序的代码实例
Mar 06 #Python
Python二叉树的镜像转换实现方法示例
Mar 06 #Python
Python实现二叉树的常见遍历操作总结【7种方法】
Mar 06 #Python
You might like
使用PHP遍历文件目录与清除目录中文件的实现详解
2013/06/24 PHP
一个基于phpQuery的php通用采集类分享
2014/04/09 PHP
ThinkPHP中的create方法与自动令牌验证实例教程
2014/08/22 PHP
PHP永久登录、记住我功能实现方法和安全做法
2015/04/27 PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
2017/08/04 PHP
javascript 实用的文字链提示框效果
2010/06/30 Javascript
使用js写的一个简易的投票
2013/11/27 Javascript
window.open 以post方式传递参数示例代码
2014/02/27 Javascript
jQuery简易图片放大特效示例代码
2014/06/09 Javascript
javascript 自定义回调函数示例代码
2014/09/26 Javascript
JS遍历数组和对象的区别及递归遍历对象、数组、属性的方法详解
2016/06/14 Javascript
js实现文字截断功能
2016/09/14 Javascript
原生JS实现几个常用DOM操作API实例
2017/01/19 Javascript
微信小程序页面开发注意事项整理
2017/05/18 Javascript
JavaScript实现省市联动过程中bug的解决方法
2017/12/04 Javascript
vue3.0 CLI - 2.1 -  component 组件入门教程
2018/09/14 Javascript
js核心基础之构造函数constructor用法实例分析
2019/05/11 Javascript
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
2015/04/28 Python
Python使用sqlalchemy模块连接数据库操作示例
2019/03/13 Python
pandas DataFrame行或列的删除方法的实现示例
2019/08/02 Python
ubuntu上安装python的实例方法
2019/09/30 Python
html5 canvas-1.canvas介绍(hello canvas)
2013/01/07 HTML / CSS
遥感技术与仪器求职信
2014/02/22 职场文书
安全教育实施方案
2014/03/02 职场文书
法制报告会主持词
2014/04/02 职场文书
个人委托书怎么写
2014/04/04 职场文书
环保志愿者活动方案
2014/08/14 职场文书
重阳节活动总结
2014/08/27 职场文书
2014年小学教师工作总结
2014/11/10 职场文书
小班上学期幼儿评语
2014/12/30 职场文书
七一建党节慰问信
2015/02/14 职场文书
教师辞职信范文
2015/02/28 职场文书
铁人纪念馆观后感
2015/06/16 职场文书
优秀大学生申请书
2019/06/24 职场文书
2019年幼儿园管理条例范本!
2019/07/17 职场文书
导游词之镇江-金山寺
2019/10/14 职场文书