Intersection of Two Linked Lists LeetCode solution in Python

1
class Solution:
2
def getIntersectionNode(
3
self, headA: ListNode, headB: ListNode
4
) -> Optional[ListNode]:
5
m = 0
6
n = 0
7
temp = headA
8
while temp != None:
9
m += 1
10
temp = temp.next
11
temp = headB
12
while temp != None:
13
n += 1
14
temp = temp.next
15
diff = 0
16
if m >= n:
17
diff = m - n
18
else:
19
diff = n - m
20
p1 = headA
21
p2 = headB
22
if max(m, n) == m:
23
while diff > 0:
24
p1 = p1.next
25
diff -= 1
26
else:
27
while diff > 0:
28
p2 = p2.next
29
diff -= 1
30
while p1 != None and p2 != None:
31
if p1 == p2:
32
return p1
33
p1 = p1.next
34
p2 = p2.next
35
return None

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0