✅Easy & Clear Solution Python 3✅
\n\n# Code\n\nclass Solution:\n    def zigzagLevelOrder(self, root: Optional[TreeNode]) -> List[List[int]]:\n        res=[]\n        def add(i,tree):\n         
\n\n# Code\n```\nclass Solution:\n    def zigzagLevelOrder(self, root: Optional[TreeNode]) -> List[List[int]]:\n        res=[]\n        def add(i,tree):\n            if len(res)<=i:\n                res.append([tree.val])\n            else:\n                res[i].append(tree.val)\n            i+=1\n            if tree.left: add(i,tree.left)\n            if tree.right: add(i,tree.right)\n        if root:   \n            add(0,root)\n        for i in range(len(res)):\n            if i%2==1:\n                res[i].reverse()\n        return res\n            \n```
['Recursion', 'Python3']