Longest ZigZag Path in a Binary Tree LeetCode solution in Python

1
# Runtime: 437 ms (Top 91.25%) | Memory: 59.8 MB (Top 86.06%)
2

3

4
class Solution:
5
def longestZigZag(self, root: Optional[TreeNode]) -> int:
6
self.res = 0
7

8
def helper(root):
9
if root is None:
10
return -1, -1
11

12
leftRight = helper(root.left)[1] + 1
13
rightLeft = helper(root.right)[0] + 1
14
self.res = max(self.res, leftRight, rightLeft)
15
return leftRight, rightLeft
16

17
helper(root)
18
return self.res

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0