当前位置: 首页 > news >正文

力扣Hot100--226.翻转二叉树

力扣Hot100–226.翻转二叉树

要求:给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。

层序遍历的思想:
1、从队列中取出当前节点(使用 popleft()确保先进先出)
​​2、交换该节点的左右子树​​:node.left, node.right = node.right, node.left
3、如果左子树不为空,将其加入队列(等待后续处理)
4、如果右子树不为空,将其加入队列(等待后续处理)

代码:

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:if root is None:return Nonequeue = deque([root])while queue:size = len(queue)for _ in range(size):node = queue.popleft()node.left,node.right=node.right,node.leftif node.left:queue.append(node.left)if node.right:queue.append(node.right)return root

递归–前序遍历方法:

class Solution:def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:def swapTree(node):if node is None:return Nonenode.left,node.right=node.right,node.leftif node.left:swapTree(node.left)if node.right:swapTree(node.right)return rootresult = swapTree(root)return result

递归–后序遍历方法:

class Solution:def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:def swapTree(node):if node is None:return Noneif node.left:swapTree(node.left)if node.right:swapTree(node.right)node.left,node.right=node.right,node.leftreturn rootresult = swapTree(root)return result

递归–中序遍历方法:

class Solution:def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:def swapTree(node):if node is None:return Noneif node.left:swapTree(node.left)node.left,node.right=node.right,node.leftif node.left:swapTree(node.left)return rootresult = swapTree(root)return result
http://www.dtcms.com/a/487801.html

相关文章:

  • 园岭网站建设百度做广告
  • LeetCode每日一题——矩阵置0
  • 网站规划和建设的基本步骤怎么做属于自己的免费网站
  • 东莞个人网站设计天津平台网站建设企业
  • Python全栈(基础篇)——Day12:函数进阶(闭包+装饰器+偏函数+实战演示+每日一题)
  • 【完整源码+数据集+部署教程】 【运输&加载码头】仓库新卸物料检测系统源码&数据集全套:改进yolo11-DRBNCSPELAN
  • 网站建设发展历程怎样在微信中做网站
  • 阿里巴巴网站推广方法免费网络推广网站大全
  • 信息分类网站建设字节跳动员工人数多少
  • Android 如何开启 16KB 模式
  • VOFA添加取消光标标记使用方法
  • 【学习笔记】大模型慢思考模式的优缺点
  • 精读《JavaScript 高级程序设计 第4版》第12章 BOM
  • 临桂城乡建设局网站开源wordpress
  • BRPC基础使用
  • 如何用网站模板建设网站南京模板建网站哪家好
  • 称多县公司网站建设网上做家教那个网站好
  • 做家装模型的效果图网站宁德市住房和城乡建设局网站
  • Burp Suite抓包软件使用说明1-Http history
  • 买了两台服务器可以做网站吗不起眼的暴利小生意
  • glibc升级到指定版本
  • 做一个智能体搭建复盘吧
  • 销售网站建设的意义企业网站建设策划书 前言
  • 做房产网站在百度推广推广费前端素材网
  • 家政服务网站建设方案建筑建设网站
  • DirectShow帮助文档
  • No032:休眠的智慧——当DeepSeek学会在静默中更新
  • 注册什么公司给别人做网站成都市房产透明网官网
  • 租车网站 模板提供中山精品网站建设
  • 用于设计和验证自动驾驶系统的场景库