Write a program to find the node at which the intersection of two singly linked lists begins.
class Solution(object):
def getIntersectionNode(self, headA, headB):
"""
:type head1, head1: ListNode
:rtype: ListNode
"""
if not headA or not headB:
return None
pa = headA
pb = headB
while pa is not pb:
pa = headB if pa is None else pa.next
pb = headA if pb is None else pb.next
return pa
1 如果考虑时间复杂度,不用for循环用while循环
2 这里的switch head是关键,可以加快meet的速度