当前位置: 首页 > wzjs >正文

世界各国b2b网站大全优书网首页

世界各国b2b网站大全,优书网首页,福建网站建设服务,动漫制作专业学校前十名141. 环形链表 方法一 核心思想: 使用一个集合 seen 来记录已经访问过的节点。遍历链表,如果当前节点已经存在于集合中,说明链表存在环;否则,将当前节点添加到集合中,继续遍历。如果遍历结束(h…

141. 环形链表

方法一

  • 核心思想

    • 使用一个集合 seen 来记录已经访问过的节点。
    • 遍历链表,如果当前节点已经存在于集合中,说明链表存在环;否则,将当前节点添加到集合中,继续遍历。
    • 如果遍历结束(head 为 None),说明链表没有环。
  • 时间复杂度

    • 最坏情况下需要遍历整个链表,时间复杂度为 O(n),其中 n 是链表的节点数。
  • 空间复杂度

    • 使用了一个集合 seen 来存储节点,空间复杂度为 O(n)
# Definition for singly-linked list.
# class ListNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.next = Noneclass Solution(object):def hasCycle(self, head):""":type head: ListNode:rtype: bool"""seen = set()while head:if head in seen:return Trueseen.add(head)head = head.nextreturn False

方法二

  • 快慢指针的核心思想

    • 快指针每次移动两步,慢指针每次移动一步。
    • 如果链表存在环,快指针最终会追上慢指针(相遇)。
    • 如果链表不存在环,快指针会先到达链表末尾。
  • 时间复杂度O(n)

  • 空间复杂度O(1)

def hasCycle(self, head):slow = fast = head  # 初始化慢指针和快指针,都指向链表头节点while fast and fast.next:  # 当快指针及其下一个节点不为空时slow = slow.next  # 慢指针每次移动一步fast = fast.next.next  # 快指针每次移动两步if slow == fast:  # 如果快慢指针相遇return True  # 说明链表存在环return False  # 遍历结束,没有发现环
http://www.dtcms.com/wzjs/187367.html

相关文章:

  • 东莞网站推广怎么做百度seo网站
  • 网站可以做软著吗开封seo推广
  • 网站建设排版页面100种宣传方式
  • 网站备案查询 java今天军事新闻最新消息
  • php p2p网站开发整站快速排名优化
  • 怎么知道网站程序是什么做的今日国际新闻头条新闻
  • 芜湖网站建设推广公司长沙seo
  • 宁波网站建设慕枫科技百度联系方式
  • 网店详情页设计白杨seo
  • 陕西专业网站建设价格icp备案查询
  • 对比网页设计网站免费发帖平台
  • inititle 网站建设软件推广怎么赚钱
  • 免费拓客软件排行榜seozhun
  • 最新中国b2b网站排名网络营销的主要传播渠道
  • 搭建一个网站多少钱seo怎么读
  • 云主机iss怎么做网站app下载注册推广平台
  • APP客户端网站建设推广项目的平台
  • 郴州是几线城市搜索引擎优化的概念是什么
  • 网站建设学习网站网络广告策划流程有哪些?
  • 动态网站难不难做电子商务网站建设多少钱
  • 乐清网站开发公司关键词优化哪家好
  • 乐清站在哪跨境电商平台有哪些?
  • 做网站的公司广州廊坊关键词优化排名
  • 四川成都营销型网站网络服务费计入什么科目
  • 网站建设公司价格表广告推广免费发布
  • 网站怎么做导航域名交易平台
  • 合肥做网站建设公司在百度上怎么卖自己的产品
  • 杭州未来科技网站建设百度账号怎么改用户名
  • php做的购物网站代码2020年度关键词有哪些
  • wordpress文件共享seo优化就业前景