每天一道剑指offer-链表中环的入口节点
题目描述
给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。
思路
首先判断链表中是否有环,设置两个指针,一个一次走一步,另一个一次走两步,若链表中存在环,则两个指针一定会相遇,否则输出null
有环,找出环的入口节点,当两节点第一次相遇后,让其中一个指针指向头结点,每次走一步,再次相遇时的节点就是入口节点。推导可自行百度。
代码
public ListNode EntryNodeOfLoop(ListNode pHead){ListNode p1 =pHead;ListNode p2 = pHead;while(p1!=null && p2!=null){p1 = p1.next;if(p2.next == null){return null;//p2.next ==null 时, 其next报错}p2 = p2.next.next;if(p1 == p2){//有环p2 = pHead;while(p1 != p2){p1 = p1.next;p2 = p2.next;}return p1;}}return null;}
每天一道剑指offer-链表中环的入口节点相关推荐
- 剑指Offer——链表中环的入口结点
题目描述: 一个链表中包含环,请找出该链表的环的入口结点. 分析: 设置两个指针p1,p2, 两个指针都从链表的头部开始走,不过p1每次走一步,p2每次走两步. 直到相遇的时候,p2走的长度是p1的两 ...
- 剑指offer-面试题23:链表中环的入口节点 快慢指针+双指针
题目描述 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null.如图所示,节点3是链表中环的入口节点 本题的解决分为两步:(1)确定链表中是否有环(2)如果有环,确定环的入口节点. ...
- 剑指 Offer II 049. 从根节点到叶节点的路径数字之和
剑指 Offer II 049. 从根节点到叶节点的路径数字之和: 题目链接 :剑指 Offer II 049. 从根节点到叶节点的路径数字之和 题目: 给定一个二叉树的根节点 root ,树中每个节 ...
- 牛客题霸 [链表中环的入口节点] C++题解/答案
牛客题霸 [链表中环的入口节点] C++题解/答案 题目描述 对于一个给定的链表,返回环的入口节点,如果没有环,返回null 拓展: 你能给出不利用额外空间的解法么? 题解: 判断环有个很巧妙的方法, ...
- 递增的整数序列链表的插入_每日算法题 | 剑指offer 链表专题 (5)链表中倒数第k个节点...
点击上方"Jerry的算法和NLP",选择"星标"公众号 重磅干货,第一时间送达 题目 链表中倒数第k个节点 题目要求 输入一个链表的头结点,从尾到头反过来打印 ...
- 划水总结剑指offer 链表系列1
最近在找实习,发现面试题和oj的题差距蛮大的,然后粗略的刷了一遍剑指offer.希望6月中旬前能拿个实习(捂脸哭) 1.首先总结关于链表的题. (1)从尾到头打印一个链表.像我这样的憨憨上来就想 这不 ...
- 一道剑指offer经典面试题引发的思考
大家在拿到一道算法题的时候,都会思考些什么呢? 大家有没有想过,当有一位面试官追问你,这道题有没有什么问题,或者有没有什么更好的方法,你们的内心是怎样的呢? 可能你会瞪大了眼,一些盲目自信的同学可能会 ...
- 【Java】剑指 Offer II 022. 链表中环的入口节点
题目 :给定一个链表,返回链表开始入环的第一个节点. 从链表的头节点开始沿着 next 指针进入环的第一个节点为环的入口节点.如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 p ...
- 剑指 Offer II 022. 链表中环的入口节点(力扣剑指Offer专项突击版——链表2)
题目 给定一个链表,返回链表开始入环的第一个节点. 从链表的头节点开始沿着 next 指针进入环的第一个节点为环的入口节点.如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 po ...
- 《剑指offer》链表中环的入口节点
题目:一个链表中包含环,请找出该链表的环的入口结点. 解析:思想是用list存储从头开始遍历的链表节点,如果list集合不存在该节点,就把该节点添加进list,然后继续遍历下一个.当list中包含当前 ...
最新文章
- 机器翻译评测——BLEU算法详解 (新增 在线计算BLEU分值)评估
- 未来今日研究所:2019技术趋势报告
- quartz mysql 初始化_quartz2.3.0(十五)执行、暂停、继续执行、清除,花式操作数据库中持久化的job任务...
- 设计模式 - 适配器模式
- YBTOJ:采矿战略(线段树维护dp、树链剖分)
- leetcode - 343. 整数拆分
- whitepages 配合调查_“你好,我是警察!请配合我们的调查......”_政务_澎湃新闻...
- c语言字符型常量的例题,C语言笔试题100道
- PackageManager
- 武汉大学计算机学院夏桂松,武汉大学电子信息学院导师介绍:何楚
- mysql的windows安装步骤_windows下mysql安装配置教程
- JDK7及早期版本Java HotSpot 虚拟机配置选项
- 什么是OOP?使用OOP用什么好处?
- h5网页ios中滑动字体变大
- Docker与微服务实战(入门)
- CAS配置数据库,实现数据库用户认证
- python安装不了是什么问题_python为什么安装了运行不了?
- Pre-Switch宣布推出采用人工智能的跨平台软开关技术
- SpringMVC项目升级SpringBoot项目参考
- Shell 批量创建文件夹