题目:一个链表中包含环,请找出该链表的环的入口结点。

解析:思想是用list存储从头开始遍历的链表节点,如果list集合不存在该节点,就把该节点添加进list,然后继续遍历下一个。当list中包含当前节点了,说明链表中有环了,而当前节点就是环的入口节点

/*public class ListNode {int val;ListNode next = null;ListNode(int val) {this.val = val;}
}
*/
import java.util.ArrayList;
import java.util.List;
public class Solution {public ListNode EntryNodeOfLoop(ListNode pHead){if(pHead==null){return null;}List<ListNode> list = new ArrayList<>();//存储链表节点的listListNode result=null;while (pHead!=null){if(!list.contains(pHead)){//不包含当前节点,就添加进list,继续遍历list.add(pHead);pHead=pHead.next;continue;}else {result=pHead;//list中已经存储过当前节点,说明重复了,breakbreak;}}return result;}
}

《剑指offer》链表中环的入口节点相关推荐

  1. 剑指Offer——链表中环的入口结点

    题目描述: 一个链表中包含环,请找出该链表的环的入口结点. 分析: 设置两个指针p1,p2, 两个指针都从链表的头部开始走,不过p1每次走一步,p2每次走两步. 直到相遇的时候,p2走的长度是p1的两 ...

  2. 剑指offer-面试题23:链表中环的入口节点 快慢指针+双指针

    题目描述 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null.如图所示,节点3是链表中环的入口节点 本题的解决分为两步:(1)确定链表中是否有环(2)如果有环,确定环的入口节点. ...

  3. 牛客题霸 [链表中环的入口节点] C++题解/答案

    牛客题霸 [链表中环的入口节点] C++题解/答案 题目描述 对于一个给定的链表,返回环的入口节点,如果没有环,返回null 拓展: 你能给出不利用额外空间的解法么? 题解: 判断环有个很巧妙的方法, ...

  4. 剑指 Offer II 049. 从根节点到叶节点的路径数字之和

    剑指 Offer II 049. 从根节点到叶节点的路径数字之和: 题目链接 :剑指 Offer II 049. 从根节点到叶节点的路径数字之和 题目: 给定一个二叉树的根节点 root ,树中每个节 ...

  5. 递增的整数序列链表的插入_每日算法题 | 剑指offer 链表专题 (5)链表中倒数第k个节点...

    点击上方"Jerry的算法和NLP",选择"星标"公众号 重磅干货,第一时间送达 题目 链表中倒数第k个节点 题目要求 输入一个链表的头结点,从尾到头反过来打印 ...

  6. 划水总结剑指offer 链表系列1

    最近在找实习,发现面试题和oj的题差距蛮大的,然后粗略的刷了一遍剑指offer.希望6月中旬前能拿个实习(捂脸哭) 1.首先总结关于链表的题. (1)从尾到头打印一个链表.像我这样的憨憨上来就想 这不 ...

  7. 【Java】剑指 Offer II 022. 链表中环的入口节点

    题目 :给定一个链表,返回链表开始入环的第一个节点. 从链表的头节点开始沿着 next 指针进入环的第一个节点为环的入口节点.如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 p ...

  8. 剑指 Offer II 022. 链表中环的入口节点(力扣剑指Offer专项突击版——链表2)

    题目 给定一个链表,返回链表开始入环的第一个节点. 从链表的头节点开始沿着 next 指针进入环的第一个节点为环的入口节点.如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 po ...

  9. 《剑指Offer》23:链表中环的入口节点

    题目 若一个链表中包含环,如何找出的入口结点?如下图链表中,环的入口节点的节点3. 分析 一快(移两节点)一慢(移一节点)两指针判断链表是否存在环. 算出环有几个节点(上一步的两指针可知是在环中,让慢 ...

最新文章

  1. jsp的session介绍 (转)
  2. php开源文件管理,搭建php开源的文件管理器eXtplorer
  3. 把struts2的struts.xml配置文件分解成多个配置文件
  4. Ajax简单异步上传图片并回显
  5. nginx在linux reload报错,linux下安装nginx
  6. 比较正宗的验证邮箱的正则表达式js代码详解
  7. view函数_利用Adams/view搭建整车动力学模型
  8. SQL实战之获取所有非manager的员工的emp_no
  9. php和dart交互,Flutter 之和原生交互
  10. linux ftp切换目录命令,linux FTP命令详解
  11. linux-Team-网卡绑定
  12. 自学机器学习,怎么才能找到工作啊?至少要避开十大雷区
  13. 优惠券设计 | 从生成规则到优惠金额分摊
  14. Day10:捡烟蒂投资法:便宜组合
  15. 计算机网络 pan名词解释,计算机网络名词解释
  16. 网页中插入Flash动画(.swf)代码和常用参数设置
  17. 计算机组成原理中各种校验码,计算机组成原理保姆级复习资料
  18. Debian 查看 硬盘 SD卡 容量 内存大小
  19. Unity3d 在 twitter 转载(周报) UniteLA大会 和 Unity2019版本的Roadmap路线图
  20. 推荐《天才在左,疯子在右》

热门文章

  1. android 4.0 电话录音,ANDROID音频系统散记之四:4.0音频系统HAL初探
  2. element表格实现树形全选_vue+element UI实现树形表格带复选框的示例代码
  3. 会不会导致内存泄漏_可能会导致.NET内存泄露的8种行为
  4. 华为交换机 查看IP和MAC对应关系
  5. python中乘法和除法_python – NumPy的性能:uint8对比浮动和乘法与除法?
  6. UDP内网和外网连接通信的问题
  7. r生成新的dataframe_2020-08-11R语言中dataframe与list的转换方法
  8. python断言assertequal_python-尝试断言AlmostEqual / assertEqual时,不受支持的操作数类型...
  9. python创建按钮_掌握Python之Tkinter按钮组件的创建及使用
  10. matlab字母随机排列,matlab实现1n整数的一个随机排列