MCPcopy Create free account
hub / github.com/neetcode-gh/leetcode / isEvenOddTree

Method isEvenOddTree

python/1609-even-odd-tree.py:2–22  ·  view source on GitHub ↗
(self, root: Optional[TreeNode])

Source from the content-addressed store, hash-verified

1class Solution:
2 def isEvenOddTree(self, root: Optional[TreeNode]) -> bool:
3 even = True
4 q = deque([root])
5
6 while q:
7 prev = float("-inf") if even else float("inf")
8 for _ in range(len(q)):
9 node = q.popleft()
10
11 if even and (node.val % 2 == 0 or node.val <= prev):
12 return False
13 elif not even and (node.val % 2 == 1 or node.val >= prev):
14 return False
15
16 if node.left:
17 q.append(node.left)
18 if node.right:
19 q.append(node.right)
20 prev = node.val
21 even = not even
22 return True

Callers

nothing calls this directly

Calls 1

popleftMethod · 0.80

Tested by

no test coverage detected