题目
解法1:BFS
本质上是个level order traversal再加一些判断即可,BFS版本的解法中需要额外的空间
class Solution:
def isEvenOddTree(self, root: TreeNode) -> bool:
q = collections.deque()
q.append(root)
levels = [[root.val]]
while q:
_len = len(q)
curr_level = []
for i in range(_len):
node = q.popleft()
if node.left:
curr_level.append(node.left.val)
q.append(node.left)
if node.right:
curr_level.append(node.right.val)
q.append(node.right)
levels.append(curr_level)
levels = levels[:-1]
#print(levels)
for i,level in enumerate(levels):
print(level)
if i%