public ListNode getIntersectionNode(ListNode headA, ListNode headB) {ListNode ha = headA, hb = headB;while (ha != hb) {ha = ha != null ? ha.next : headB;hb = hb != null ? hb.next : headA;}return ha;
}

我们先遍历链表a,将a链表的所有节点放入一个set中。

之后再遍历b链表,如果b链表的某个节点出现在set中,那么就找到了第一个相交的节点 java实现

public class Solution {public ListNode getIntersectionNode(ListNode headA, ListNode headB) {Set s = new HashSet();ListNode p = headA;ListNode q = headB;//定义一个set之后,不断遍历p链表,然后将所有元素加入到set中while(p!=null) {s.add(p);p = p.next;}while(q!=null) {//遍历q链表,如果q链表的元素出现在set中,//重合,而这个重合的就是第一个相交的节点就说明//p和q两个链表有if(s.contains(q)) {return q;}q = q.next;}return null;}
}


leet160:相交链表相关推荐

  1. 【每日一算法】相交链表

    微信改版,加星标不迷路! 每日一算法 - 相交链表 编写一个程序,找到两个单链表相交的起始节点. 如下面的两个链表: 在节点 c1 开始相交. 示例 1: 输入:intersectVal = 8, l ...

  2. 《LeetCode力扣练习》第160题 相交链表 Java

    <LeetCode力扣练习>第160题 相交链表 Java 一.资源 题目: 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点.如果两个链表不存 ...

  3. leetcode 160 简单难度 相交链表

    160. 相交链表 编写一个程序,找到两个单链表相交的起始节点. 如下面的两个链表: 在节点 c1 开始相交. 输入:intersectVal = 8, listA = [4,1,8,4,5], li ...

  4. 文巾解题 160. 相交链表

    1 题目描述 2 解题思路 2.1 哈希表 遍历listA,把每个节点(以及后继节点)放入一个list中.遍历完A之后遍历B,如果B的某个节点(以及后继节点)在这个list中,那么我们就找到了相交的部 ...

  5. LeetCode-链表-160. 相交链表

    160. 相交链表 思路一:使用set用到了额外的内存,没有达到题目要求 /*** Definition for singly-linked list.* struct ListNode {* int ...

  6. python 相交链表

    |相交链表 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点.如果两个链表不存在相交节点,返回 null . 图示两个链表在节点 c1 开始相交: 题目数据 ...

  7. LeetCode Algorithm 160. 相交链表

    160. 相交链表 Ideas 这题之前左神算法课的时候也讲过,那是一个带环的相交链表,不过原理都是一样的. 双指针,a指针先沿着headA开始走,走到头之后开始沿着headB继续走,b指针先沿着he ...

  8. 160. 相交链表 golang

    160. 相交链表 计算两个链表长度,让长的先走到两个链表一样长,然后找交点 编写一个程序,找到两个单链表相交的起始节点. 如下面的两个链表: 在节点 c1 开始相交. 示例 1: 输入:inters ...

  9. 链表题目----5 相交链表 和 环形链表 和 返回链表开始入环的第一个节点

    相交链表 思路 链表交叉不可能是x型 因为有可能两个链表不等长,所以我们必须让他们从同一起跑位置去起跑 从同一起跑位置出发,依次比较每个结点的地址是否相同 /*** Definition for si ...

  10. 【LeetCode】【HOT】160. 相交链表

    [LeetCode][HOT]160. 相交链表 文章目录 [LeetCode][HOT]160. 相交链表 package hot;class ListNode{int val;ListNode n ...

最新文章

  1. 同济计算机转专业吗,被不喜欢的专业录取了?大学想转专业需谨慎
  2. 我国第一台微型计算机诞生于哪一年,2015计算机一级《MSOffice》章节练习题及答案(1)...
  3. 配置Windows 2008 R2 防火墙允许远程访问SQL Server 2008 R2
  4. python带格式复制excel样式和内容_使用python的xlrd,xlwt和xlutils.copy保留样式
  5. HTML5+CSS3实现的小风车-转动的童年
  6. winform的UI设计关键属性汇总
  7. 玩转Jquery中的动画效果(animate方法)
  8. 记录一次docker项目连接不上docker mysql的问题
  9. ELK——Logstash 2.2 mutate 插件【翻译+实践】
  10. C#的winform中MDI 父窗体改变背景色[转]
  11. Linux tcp数据分节接收,TCP的建立和终止 图解
  12. 魔抓编程_编程中的魔数是什么?
  13. HTML是什么?HTML简介
  14. c++ socket下ipv4到ipv6的移植
  15. eclipse 装阿里规范模板
  16. Haproxy常见的负载均衡调度算法及应用场景
  17. 谷粒商城-分布式高级篇[商城业务-检索服务]
  18. Chrome+selenium+headless报错无法加载插件
  19. [渗透测试][Kali]对DC-2靶机进行渗透测试
  20. volatile 和 内存屏障

热门文章

  1. 真正的高手,都在刻意练习
  2. Azure中配置网络安全组入站规则让外部网络访问VM中的网站
  3. Django项目:LOL学院学员管理系统
  4. 《匆匆那年》的你,还记得吗?数学中的那些有(hui)趣(se)的定理(14)——毛球定理(Hairy ball theorem)
  5. 便宜SSL证书购买攻略:comodo,geotrust,rapidssl证书为例
  6. 12-14日小米4 手机不停的无限重启。用下面方法及清理电源,音量按钮恢复
  7. DNSPod十问顺丰科技唐恺:为什么顺丰快递那么快?
  8. 单链表的插入操作(全)
  9. Steinitz exchange lemma
  10. 安装eclipse c++版本neno