剑指 Offer 52. 两个链表的第一个公共节点


https://leetcode-cn.com/problems/liang-ge-lian-biao-de-di-yi-ge-gong-gong-jie-dian-lcof/

这道题我还是不知道为什么会超时
做题的时候不要去回想题解的代码a,要去自己理解,自己敲自己的代码
错误示范:
超时

public class Solution {
    public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
        ListNode a = headA; 
        ListNode b = headB;
        while(a != b){
//一上来就想确定下一个是不是空
            a = a.next != null ? a.next : headA ;
            b = b.next != null ? b.next : headB;
        }
        return a;
    }
}

正确代码:

public class Solution {
    public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
        ListNode A = headA, B = headB;
        while (A != B) {
//先看自己是不是空,等到下一轮再看下一个是不是空
            A = A != null ? A.next : headB;
            B = B != null ? B.next : headA;
        }
        return A;
    }
}