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

leetcode刷题日记——环形链表

[ 题目描述 ]:
在这里插入图片描述
[ 思路 ]:

  • 给定一个链表的头节点,判断其中是否存在环
  • 可以设立两个快慢指针,快的走两步,慢的走一步,如果存在环,则总有一次,快指针一定会等于慢指针
  • 如果不存在环,则链表会被走到末尾
  • 运行如下
    在这里插入图片描述
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
bool hasCycle(struct ListNode *head) {if(!head) return false;struct ListNode* fast=head;struct ListNode* slow=head;while(fast->next && fast->next->next){fast=fast->next->next;slow=slow->next;if(fast==slow) return true;}return false;
}

[ 官方题解 ]:

  • 方法一:哈希表,可以使用哈希表来存储所有已经访问过的节点。每次我们到达一个节点,如果该节点已经存在于哈希表中,则说明该链表是环形链表,否则就将该节点加入哈希表中。重复这一过程,直到我们遍历完整个链表即可。
  • 方法二:快慢指针,基本同上
http://www.xdnf.cn/news/2239.html

相关文章:

  • 新增Webhook通知功能,文档目录树展示性能优化,zyplayer-doc 2.5.1 发布啦!
  • Linux基础篇、第4章_03系统磁盘高级管理LVM 逻辑卷管理器
  • 【头脑风暴】加权平均
  • 模型 递弱代偿
  • [计算机科学#2]:从继电器到晶体管的电子计算机发展史(庞然大物的进化)
  • 视觉大模型专栏导航
  • C++泛型编程(一):模板详解
  • 可视化大屏开发前提了解
  • ssm驾校预约管理系统的设计与实现(源码+lw+部署文档+讲解),源码可白嫖!
  • dl学习笔记(13):从强化学习到PPO
  • cf | Median Splits
  • Dubbo(78)Dubbo的集群容错机制是如何实现的?
  • Ollama平替!LM Studio本地大模型调用实战
  • 509. 斐波那契数
  • 集合及相关
  • 什么是 Swagger 以及如何在 Spring Boot 中实现 Swagger:配置与实践指南
  • 【黑马JavaWeb+AI知识梳理】前端Web基础01 - HTML+CSS
  • 【leetcode100】单词拆分
  • C++:位图
  • 【Charles】抓包工具安装配置unknown问题解决
  • 《人件》第三章 正确的人
  • 在Windows11中配置Git+SSH环境,本此实践使用Gitee(码云),方法同样适用于其它绝大部分Git服务
  • Linux-进程控制
  • 安服实习面试面经总结(也适合hvv蓝初)
  • Linux渗透测试
  • x修改ssh版本号9.9可以躲过漏洞扫描器扫描
  • JAVA---字符串
  • 通过门店销售明细表用SQL得到每月每个门店的销冠和按月的同比环比数据
  • 可视化性能分析工具火焰图
  • function,bind,lambda的用法