相交链表
题目
给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。
public class Solution {
public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
if(headA == null || headB == null) return null;
ListNode pA = headA, pB = headB;
while(pA != pB) { // 若是有缘,你们早晚会相遇
pA = pA == null ? headB : pA.next; // 当你走到终点时,开始走她走过的路
pB = pB == null ? headA : pB.next; // 当她走到终点时,开始走你走过的路
}
return pA;
}
}