#被大佬教了一个特别惊艳的方法# 我们摸索着向前,盼望着相见,可或许你的路要更长,让我们遗憾地在交叉路口擦肩而过,无妨,当我们各自走过尽头,请回到对方最初的起点,重温对方的路,我们终会在交叉路口,紧紧相拥。 我多想在终点等你,可谁让这道题非要我们相遇在交叉路口才行呢
# def __init__(self, x):
# self.val = x
# self.next = None
#
#
# @param pHead1 ListNode类
# @param pHead2 ListNode类
# @return ListNode类
#
class Solution:
def FindFirstCommonNode(self , pHead1 , pHead2 ):
pa, pb = pHead1, pHead2
while pa != pb:
if pa:
pa = pa.next
else: #走完了是吧?别闲着,给爷上pHead2那块再走一遍
pa = pHead2
if pb:
pb = pb.next
else: #走完了是吧?别闲着,给爷上pHead1那块再走一遍
pb = pHead1
return pa #哎呀妈呀你说巧不巧, pa和pb遇上了....废话,这回走的总路程一样长,肯定能遇见
# write code here