class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
def isEvenOddTree(root):
queue = [root]
level = 0
while queue:
# 为了之后递增递减的准备的prev
prev = float('inf') if level % 2 else 0
nxt = []
# 一层的元素都在queue里面
for node in queue:
val = node.val
# 满足规定的条件
if val % 2 == level % 2 or level % 2 == 0 and val <= prev or level % 2 == 1 and val >= prev:
return False
prev = val
if node.left:
nxt.append(node.left)
if node.right:
nxt.append(node.right)
queue = nxt
level += 1
return True
LeetCode 1609 奇偶树
最新推荐文章于 2024-07-19 23:59:56 发布