LeetCode 刷题 [C++] 第141题.环形链表

题目描述

给你一个链表的头节点 head ,判断链表中是否有环。

如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。

如果链表中存在环 ,则返回 true 。 否则,返回 false 。
在这里插入图片描述

题目分析

快慢指针特性 每轮移动之后快指针和慢指针间的距离会加一。

  1. 通过分析题意,可以使用快慢指针来解决该问题。
  2. 假设链表中存在环,当慢指针进入环后,快指针已经进入环并移动了若干次;
  3. 此时就可以看成快指针追击慢指针的问题,假设此时快指针和慢指针间的间距为gap,每次移动后,快指针与慢指针间的间距会缩短1,因此,当移动gap次后,快指针追上慢指针。
  4. 如果链表中不存在环,则快指针与慢指针不会相遇,正常移动到链表尾部结束即可。

Code

class Solution {
public:bool hasCycle(ListNode *head) {ListNode* fast = head;ListNode* slow = head;while (nullptr != fast && nullptr != fast->next) {fast = fast->next->next;slow = slow->next;if (fast == slow) {return true;}}return false;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/495909.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安全防御-第六次

内容安全 攻击可能只是一个点,防御需要全方面进行 DFI和DPI技术--- 深度检测技术 DPI --- 深度包检测技术--- 主要针对完整的数据包(数据包分片,分段需要重组),之后对数据包的内容进行识别。(应用层&…

Python 实现Excel自动化办公(上)

在Python 中你要针对某个对象进行操作,是需要安装与其对应的第三方库的,这里对于Excel 也不例外,它也有对应的第三方库,即xlrd 库。 什么是xlrd库 Python 操作Excel 主要用到xlrd和xlwt这两个库,即xlrd是读Excel &am…

type may not be empty [type-empty]

原因是使用了规范commit信息的工具,你的提交信息不符合规范,所以被拒绝了 commit规范工具 commitlinthusky 解决方式一: 修改提交信息, 使其符合规范 git commit -m "feat: 新功能"使用Git Gui的使用以下格式写提交…

安装使用zookeeper

先去官网下载zookeeper:Apache ZooKeeper 直接进入bin目录,使用powerShell打开。 输入: ./zkServer.cmd 命令,启动zookeeper。 zookeeper一般需要配合Dubbo一起使用,作为注册中心使用,可以参考另一篇博客&#xf…

探索IP地址定位工具:解读IP数据云的功能与优势

在当今数字化时代,IP地址定位工具成为了许多领域中不可或缺的技术支持,为网络安全、地理定位服务和个性化推荐等提供了重要数据支持。其中,IP数据云作为一种领先的IP地址定位工具,具有一系列功能和优势,本文将对其进行…

SM30增强(隐藏标准按钮【权限控制】、事件处理【记录新增字段或者自动带出描述、日期等】)

1.隐藏标准按钮、自定义标准按钮(不赘述,同个道理) 环境-》修改-》用户界面 按照提示创建对应的SM30自定义GUI 创建好之后可以通过SM30界面上的状态查看不同的GUI名称 这里需要注意的是,编辑和显示的界面实际上GUI是不一样的 创…

什么是大模型微调?微调的分类、方法、和步骤

2023年,大模型成为了重要话题,每个行业都在探索大模型的应用落地,以及其能够如何帮助到企业自身。尽管微软、OpenAI、百度等公司已经在创建并迭代大模型并探索更多的应用,对于大部分企业来说,都没有足够的成本来创建独特的基础模型(Foundation Model):数以百亿计的数据…

jvm常用参数配置

一、 常用参数 -Xms JVM启动时申请的初始Heap值,默认为操作系统物理内存的1/64但小于1G。默认当空余堆内存大于70%时,JVM会减小heap的大小到-Xms指定的大小,可通过-XX:MaxHeapFreeRation来指定这个比列。Server端JVM最好将-Xms和-Xmx设为相同…

Aigtek高压放大器是什么东西做的

在许多电子应用中,需要将低电压信号放大到较高电压以满足特定的需求。为了实现这个目标,高压放大器被广泛采用。高压放大器是一种专用电子设备,使用特定的电路和器件来增益输入信号的电压。它通常由以下几个主要组成部分构成。 电源供应 高压…

Ubuntu常用状态命令

目录 一、温度 1,查看CPU温度 2,查看硬盘温度 二、CPU状态 1,显示CPU的详细信息,包括型号、频率、缓存等 2,显示CPU架构、CPU核心数、线程数、频率等信息 三、登录状态 1,查看成功登录的用户 2&am…

java springmvc/springboot 项目通过HttpServletRequest对象获取请求体body工具类

请求 测试接口 获取到的 获取到打印出的json字符串里有空格这些,在json解析的时候正常解析为json对象了。 工具类代码 import lombok.extern.slf4j.Slf4j; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.we…

4核8G服务器并发数多少?性能如何?

腾讯云4核8G服务器支持多少人在线访问?支持25人同时访问。实际上程序效率不同支持人数在线人数不同,公网带宽也是影响4核8G服务器并发数的一大因素,假设公网带宽太小,流量直接卡在入口,4核8G配置的CPU内存也会造成计算…