AcWing 66. 两个链表的第一个公共结点-java

AcWing 66. 两个链表的第一个公共结点

原题链接

输入两个链表,找出它们的第一个公共结点。

当不存在公共节点时,返回空节点。

数据范围
链表长度 [1,2000]。

代码案例:
在这里插入图片描述

题解

类似追及相遇问题
在这里插入图片描述

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
class Solution {
    public ListNode findFirstCommonNode(ListNode headA, ListNode headB) {
        ListNode p1 = headA ;
        ListNode p2 = headB;
        while(p1 != p2){
            if(p1 != null) p1 = p1.next;
            else p1 = headB;
            if(p2 != null) p2 = p2.next;
             else p2 = headA;
        }
        return p1 ;
        
    }
}
posted @   依嘫  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示