leedcode-左叶子之和
自己写的,使用了经典的广度优先搜素(BFS):
class Solution: def sumOfLeftLeaves(self, root: Optional[TreeNode]) -> int: # 初始化队列,将根节点放入队列中 queue = [root] # 初始化结果变量 res = 0 # 遍历队列,直到队列为空 while queue: # 取出队列中的第一个节点 cur = queue.pop(0) # 如果当前节点的左子节点存在 if cur.left: # 将左子节点添加到队列中 queue.append(cur.left) # 如果当前左子节点没有左子节点和右子节点(即为左叶子节点) if not cur.left.left and not cur.left.right: # 将左叶子节点的值加到结果中 res += cur.left.val # 如果当前节点的右子节点存在 if cur.right: # 将右子节点添加到队列中 queue.append(cur.right) # 返回左叶子节点的和 return res
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)