当前位置:网站首页>141.环形链表
141.环形链表
2022-07-23 02:46:00 【ZNineSun】
打卡!!!每日一题
今天给大家分享一道链表类型的题目,题目很简单,主要是处理的方法,本文主要有两道题,带着大家由第一道题过渡到第二道题目。
题目1:141.环形链表
题目描述:
给你一个链表的头节点 head ,判断链表中是否有环。
如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。
如果链表中存在环 ,则返回 true 。 否则,返回 false 。
题目示例:
我们简单的分析一下这道题,题目意思很简单,就是让你判断是否存在环,我们的做法也很简单,将我们遍历的过的结点保存,一旦发现某个结点的Next被访问过,说明有环,如果链表遍历结束说明没有环。
遍历结束的条件:
- 1.遍历结束,即结点的next为空。
- 2.遍历到已经被访问过的结点。
public boolean hasCycle(ListNode head) {
if(head==null)return false;
List<ListNode>list=new ArrayList<>();
while(!list.contains(head)&&head!=null){
list.add(head);
head=head.next;
}
if(head==null){
return false;
}else return true;
}
是不是很简单,我们再接着向下去思考一道进阶题。
题目2:142.环形链表2
题目描述:
给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。
如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。
不允许修改 链表。
题目示例:

这道题和 上一道题基本如出一辙,唯一不同就是需要我们返回链表开始入环的第一个节点。
这道题的关键还是要找到哪一个结点的next是被访问过的,一旦找到,我们直接return即可。
public ListNode detectCycle(ListNode head) {
if(head==null||head.next==null)return null;
List<ListNode>list=new ArrayList<>();
while(!list.contains(head)&&head!=null){
list.add(head);
if(list.contains(head.next)){
return head.next;
}
head=head.next;
}
return null;
}
边栏推荐
- [introduction to node basics] - node middle layer does interface forwarding to realize cross domain requests
- [notes on the practice of node middle tier (I)] -- building the project framework
- 【无标题】
- [BDSec CTF 2022] 部分WP
- PHP converts pictures to Base64 format and restores them to generate pictures
- 【Node中间层实践小记(一)】----搭建项目框架
- 数组中的逆序对
- 亿级流量下的分布式锁优化方案!太好用了~
- 2022年了,软件测试这个行业还吃香么?
- express操作mysql,sql哪里写错了?
猜你喜欢

【HiFlow】定期发送腾讯云短信发送群

十年磨一剑,云原生分布式数据库PolarDB-X的核心技术演化

拓扑排序 & 关键路径

Distributed lock optimization scheme under 100 million traffic! It works so well~

Peptide nucleic acid coupled polypeptide ile Glu Gly Arg PNA (s-2222) | BOC Leu Gly Arg PNA

Burpsuite 插件的学习与使用

MySQL数据库UDF提权学习

Ten years of sharpening a sword, the core technology evolution of the cloud native distributed database polardb-x

面试官:解释一下ThreadLocal 核心原理

第一次改开源中间件keycloak总个结
随机推荐
9.2章MATLAB的程序控制
平台型企业如何解决分账核算业务呢?
PHP converts ASCII code to string, and string converts ASCII code
Excel简单使用宏
BGP反射器,联邦,选路规则
海通证券场内基金开户怎么样安全吗
Burpsuite 插件的学习与使用
[introduction to node basics] - node middle layer does interface forwarding to realize cross domain requests
Verilog grammar basics HDL bits training 04
Is the sub database and sub table really suitable for your system? Talk about how to select sub databases, sub tables and newsql
大专学历想0基础学编程以后找工作可行吗 ?
J.Serval and Essay(tarjan求拓扑序)
seatunnel 架构
【南瓜书ML】(task3)决策树(更新ing)
567. 字符串的排列
广发期货是什么级别?开户安全可靠吗?
C语言课设----个人信息管理系统(包含学生成绩和消费记录)
2022.7.22 js入门 常用数据类型及其方法
可视化全链路日志追踪
【Node中间层实践小记(一)】----搭建项目框架