【leetcode】环形链表✚环形链表II

大家好,我是苏貝,本篇博客带大家刷题,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️
在这里插入图片描述


目录

  • 1.环形链表
    • 解题
    • 拓展:
  • 2.环形链表II

1.环形链表

点击查看题目

在这里插入图片描述

解题

思路:

在这里插入图片描述

bool hasCycle(struct ListNode *head) {struct ListNode *slow=head;struct ListNode *fast=head;while(fast&&fast->next){slow=slow->next;fast=fast->next->next;if(fast==slow)return true;}return false;
}

拓展:

1
慢指针一次走2步,快指针一次走3步,可以解决上面的题目吗?
可以的,因为它们也只是相差了1步,证明同上

2

慢指针一次走1步,快指针一次走3步,走4步,…n步行吗?下面用慢指针一次走1步,快指针一次走3步来证明
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


2.环形链表II

点击查看题目

在这里插入图片描述

思路:

在这里插入图片描述

struct ListNode *detectCycle(struct ListNode *head) {struct ListNode *slow=head;struct ListNode *fast=head;while(fast&&fast->next){slow=slow->next;fast=fast->next->next;//1.找到相遇的节点if(slow==fast){//让meet从相遇节点开始走struct ListNode *meet=slow;while(head!=meet){head=head->next;meet=meet->next;}   return meet;}}return NULL;
}

好了,那么本篇博客就到此结束了,如果你觉得本篇博客对你有些帮助,可以给个大大的赞👍吗,感谢看到这里,我们下篇博客见❤️

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

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

相关文章

C++基于多设计模式下的同步异步日志系统day2

📟作者主页:慢热的陕西人 🌴专栏链接:C基于多设计模式下的同步&异步日志系统 📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言 主要内容实现了日志代码设计的实…

11.网络游戏逆向分析与漏洞攻防-游戏网络架构逆向分析-接管游戏接收网络数据包的操作

内容参考于:易道云信息技术研究院VIP课 上一个内容:接管游戏发送数据的操作 码云地址(master 分支):https://gitee.com/dye_your_fingers/titan 码云版本号:8256eb53e8c16281bc1a29cb8d26d352bb5bbf4c 代…

软件测试最重要的事之【编写用例】

软件测试用例得出软件测试用例的内容,其次,按照软件测试写作方法,落实到文档中,两者是形式和内容的关系,好的测试用例不仅方便自己和别人查看,而且能帮助设计的时候考虑的更周。 一个好的测试用例必须包含…

【HTML】HTML基础系列文章小小总结,运用标签写出网页!

宇宙级声明!这次只运用了一些基础标签,希望不要丑到大家~ 目录 效果预览:​编辑​编辑 点击百度百科 点击图片 点击下载 标签说明 源代码 效果预览: 点击百度百科 点击图片 点击下载 标签说明 标题 加粗文字 下划线 换行 分…

IO-DAY2

用发write、fread将一张随意图片修改成德国国旗 #include<stdio.h> #include<string.h> #include<stdlib.h> #include<unistd.h> int main(int argc, char *argv[]) {FILE* fpfopen("./122.bmp","r");int w 0,h 0;fseek(fp,18,…

leetcode:860.柠檬水找零

题意&#xff1a;按照支付顺序&#xff0c;进行支付&#xff0c;能够正确找零。 解题思路&#xff1a;贪心策略&#xff1a;针对支付20的客人&#xff0c;优先选择消耗10而不是消耗5&#xff0c;因为5可以用来找零10或20. 代码实现&#xff1a;有三种情况&#xff08;代表三种…

tomcat 搭建博客 及破解数据库密码

一 tomcat 搭建博客 &#xff08;一&#xff09;博客安装包 1&#xff0c; 把博客war包 放到 webapps 文件夹下 2&#xff0c;会自动解压 3&#xff0c;做个软连接 方便后续操作 可以注意到 因为war包 是又tomcat 自己解压的 所以属主数组还是 tomcat &#xff08…

如何跳过格式化打开u盘文件?介绍几种实用方法

在使用U盘时&#xff0c;有时会遇到需要格式化才能打开文件的情况。但是&#xff0c;格式化会导致数据丢失&#xff0c;让人很头疼。那么&#xff0c;如何跳过格式化打开U盘文件&#xff1f;本文将介绍一些实用方法来解决这个问题。 方法1&#xff1a;检查USB驱动器 如果你的…

NodeJs 版本升级时Vue工程报错

最近把nodejs 的版本更新了&#xff0c;原来用的 16.15.1 现在用的 18.16.1&#xff0c;结果所有的vue工程都启不动了&#xff0c;一直报错。 1.报错截图 2.原因分析 error:03000086:digital envelope routines::initialization error &#xff0c;这个是nodejs版本的问题&am…

什么是生成式人工智能?

近年来&#xff0c;人工智能取得了重大进展&#xff0c;其中发展迅速的领域之一就是生成式人工智能。生成式人工智能是人工智能和深度学习的一个子领域&#xff0c;主要使用机器学习技 术根据现有数据训练算法和模型&#xff0c;生成诸如图像、文本、音乐、视频等新内容。 要更…

升级 Vue版本从 2.5.x 到 2.6.x

升级 Vue版本从2.5.x到2.6.x start 最近项目中需要使用某些第三方插件&#xff0c;但是第三方插件对 vue 的版本有要求。 插件要求 vue版本为 vue2.6.x 的&#xff0c;而我现有的环境是 vue2.5.x 的。 记录一下 升级 Vue 版本从 2.5.x 到 2.6.x 的过程。 正文 1. 更改 pack…

线程池的相关参数

在Java中线程池是一种池化技术&#xff0c;用于管理和复用线程&#xff0c;提高线程的利用率和性能。下面是一些常见的线程池的参数及其解释&#xff1a; 一&#xff1a;线程池的七大参数 public ThreadPoolExecutor(int corePoolSize,int maximumPoolSize,long keepAliveTim…