Python | Leetcode Python题解之第103题二叉树的锯齿形层序遍历

题目:

题解:

python 复制代码
class Solution:
    def zigzagLevelOrder(self, root: Optional[TreeNode]) -> List[List[int]]:
        if not root: return []
        res, deque = [], collections.deque()
        deque.append(root)
        while deque:
            tmp = []
            # 打印奇数层
            for _ in range(len(deque)):
                # 从左向右打印
                node = deque.popleft()
                tmp.append(node.val)
                # 先左后右加入下层节点
                if node.left: deque.append(node.left)
                if node.right: deque.append(node.right)
            res.append(tmp)
            if not deque: break # 若为空则提前跳出
            # 打印偶数层
            tmp = []
            for _ in range(len(deque)):
                # 从右向左打印
                node = deque.pop()
                tmp.append(node.val)
                # 先右后左加入下层节点
                if node.right: deque.appendleft(node.right)
                if node.left: deque.appendleft(node.left)
            res.append(tmp)
        return res
相关推荐
xxie12379410 分钟前
Python 闭包:函数嵌套的 “状态捕获” 机制
开发语言·python
c_lb728830 分钟前
最新AI量化提效,交易认知和技术实现要接上
人工智能·python
机汇五金_31 分钟前
钣金外壳定制厂家助力设备升级
大数据·人工智能·python·物联网
xxie1237941 小时前
Python 闭包的调用方法与实践
开发语言·python
HZZD_HZZD1 小时前
用电行为异常检测VAE-基于PyTorch设计用电行为异常检测模型:从时序特征提取到变分自编码器部署的完整实战
人工智能·pytorch·python
思-无-涯1 小时前
AI Agent技能编写与质量保障
人工智能·python
YuK.W1 小时前
Leetcode100: 94.二叉树中序遍历、104.二叉树最大深度、226.翻转二叉树
java·算法·leetcode·二叉树
2601_956319882 小时前
2026年下半年AI量化学习,分清表达开发和验证
人工智能·python
CTA量化套保2 小时前
最新AI量化效率提升,用示例拆解练习压实路径
人工智能·python
zhiSiBuYu05172 小时前
混合检索实战指南:关键词与向量的完美融合
人工智能·python·机器学习