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

2025年- H26-Lc134- 226. 翻转二叉树(树)---java版

1.题目描述

在这里插入图片描述

2.思路

递归调用左右子树,就是调换左右子树的值。每个节点调换左右子树。
从根节点开始,递归地对树进行遍历,并从叶子节点先开始翻转。如果当前遍历到的节点 root 的左右两棵子树都已经翻转,那么我们只需要交换两棵子树的位置,即可完成以 root 为根节点的整棵子树的翻转。

3.代码实现


class TreeNode {int val;TreeNode left;TreeNode right;TreeNode() {};TreeNode(int val) { this.val = val; }TreeNode(int val, TreeNode left, TreeNode right) {this.val = val;this.left = left;this.right = right;}
}public class H226 {public TreeNode invertTree(TreeNode root) {if(root==null){return null;}else{TreeNode left=invertTree(root.left);TreeNode right=invertTree(root.right);root.left=right;root.right=left;return root;}}// 前序遍历输出翻转后的树结构(根 -> 左 -> 右)public static void qianxu(TreeNode root){if(root==null){return ;}System.out.print(root.val+" ");qianxu(root.left);qianxu(root.right);}public static void main(String[] args){TreeNode node3=new TreeNode(3,null,null);TreeNode node2=new TreeNode(2);TreeNode root=new TreeNode(1,node2,node3);H226 test12=new H226();TreeNode tree=test12.invertTree(root);System.out.print("输出前序遍历的结果:");qianxu(tree);}
}

相关文章:

  • 《AI大模型应知应会100篇》第48篇:构建企业级大模型应用的架构设计
  • STM32教程:ADC原理及程序(基于STM32F103C8T6最小系统板标准库开发)*详细教程*
  • 01背包专题4:小A点菜
  • Q_OBJECT宏的作用
  • 深度学习中保存最优模型的实践与探索:以食物图像分类为例
  • 【nlohmann\json.hpp】‘_snprintf‘: is not a member of ‘std‘
  • Uni-app 组件使用
  • Git 远程操作
  • 二叉搜索树的最近祖先(递归遍历)
  • 《工业社会的诞生》章节
  • 信息系统监理师第二版教材模拟题第二组(含解析)
  • 【锂电池剩余寿命预测】RF随机森林锂电池剩余寿命预测(Pytorch完整源码和数据)
  • 移动 Trae 目录到 E 盘 - 解决 C 盘空间不足问题
  • 身份认证、访问控制技术、SSO单点登录技术、特权访问管理、身份治理与管理——数据安全守护者
  • 智能合约部署之全国职业院校技能大赛“区块链技术应用”赛项—“航班延误险案例”
  • 第四节:OpenCV 基础入门-第一个 OpenCV 程序:图像读取与显示
  • HTML5实战指南:语义化标签与表单表格高级应用
  • Spring Cloud Gateway路由+断言+过滤
  • 【毕设通关】——Word交叉引用
  • process terminated with status -1073741515
  • 伊朗公布新型弹道导弹,“萨德”系统无法拦截
  • 澎湃读报丨央媒头版五四青年节集中刊文:以青春之我,赴时代之约
  • 陈燮阳从艺60周年:指挥棒不停,心跳就不会老去
  • AI世界的年轻人|研究不止于实验室,更服务于遥远山区
  • 申活观察|人潮涌动成常态,豫园为何常来常新?
  • 人民日报头版头条:青春为中国式现代化挺膺担当