The direction needs to be changed after every iteration.
Attempt
'''do level order traversal by using queueuse a flag and toggle it after every iterationbased on flag do popleft or popright if I popright then the next layer values will be stored in reverse orderpuesdo code:if root == none: return []queue = deque()layer = []toggle = 0while queue: toggle = !toggle for i in range(len(q)):'''class TreeNode(object): def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = rightclass Solution(object): def zigzagLevelOrder(self, root): """ :type root: TreeNode :rtype: List[List[int]] """