class Solution {
public:
ListNode* getIntersectionNode(ListNode* headA, ListNode* headB)
{
auto la = headA, lb = headB;
while (la != lb)
{
if (la)la = la->next;
else la = headB;
if (lb)lb = lb->next;
else lb = headA;
}
return la;
}
};
思路:第一次移動恰好抹去了兩個鏈表的長度。之後各自遍歷返回第一次相等的節點即可。