操作给定的二叉树,将其变换为源二叉树的镜像。

Leetcode226  翻转二叉树

import java.util.*;/** public class TreeNode {*   int val = 0;*   TreeNode left = null;*   TreeNode right = null;*   public TreeNode(int val) {*     this.val = val;*   }* }*/public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param pRoot TreeNode类 * @return TreeNode类*///函数入口public TreeNode Mirror (TreeNode pRoot) {// write code hereif(pRoot == null) return pRoot;// 让root节点交换它的左右子节点TreeNode temp = pRoot.left;pRoot.left = pRoot.right;pRoot.right = temp;//分别递归根节点的左右子节点,继续翻转它们的子节点Mirror(pRoot.left);Mirror(pRoot.right);return pRoot;}
}

难点:

此处其实抽象出了 树的前序遍历(根---左----右)的框架:

if(pRoot == null) return pRoot;

TreeNode temp = pRoot.left;          // 根节点的处理
        pRoot.left = pRoot.right;
        pRoot.right = temp;
        
        
        Mirror(pRoot.left);                         // 左子树的处理
        Mirror(pRoot.right);                      // 右子树的处理

二叉树翻转/镜像 (Java实现)相关推荐

  1. 《LeetCode力扣练习》剑指 Offer 27. 二叉树的镜像 Java

    <LeetCode力扣练习>剑指 Offer 27. 二叉树的镜像 Java 一.资源 题目: 请完成一个函数,输入一个二叉树,该函数输出它的镜像. 例如输入: 4 / 2 7 / \ / ...

  2. 算法leetcode|剑指 Offer 27. 二叉树的镜像|226. 翻转二叉树(rust很强)

    文章目录 剑指 Offer 27. 二叉树的镜像|226. 翻转二叉树: 样例 1: 限制: 分析 题解 rust go c++ java python 原题传送门:https://leetcode. ...

  3. 二叉树 | 二叉树的镜像(翻转)

    牛客BM33 二叉树的镜像(翻转) 思路:遍历(此处不能用中序遍历) 二叉树的每个结点,分别翻转其左右孩子 我习惯用层序遍历 代码: public TreeNode Mirror (TreeNode ...

  4. 二叉树-二叉树的镜像(递归法)

    题意: 请完成一个函数,输入一个二叉树,该函数输出它的镜像. 二叉树镜像定义: 对于二叉树中任意节点 root,设其左 / 右子节点分别为 left, right :则在二叉树的镜像中的对应 root ...

  5. LeetCode-剑指 Offer 27. 二叉树的镜像

    剑指 Offer 27. 二叉树的镜像 思路一:递归 从根节点开始,递归的对树进行遍历,并从叶子节点开始翻转,得到镜像.如果当前遍历到的节点root的左右两棵子树都已经翻转得到了镜像,那么我们只需要交 ...

  6. 牛客题霸 [二叉树的镜像]C++题解/答案

    牛客题霸 [二叉树的镜像]C++题解/答案 题目描述 操作给定的二叉树,将其变换为源二叉树的镜像. 题解: 根据题也不难看出,二叉树的镜像定义其实就是左右树翻转 所以我们一直递归左子树,到头后递归右子 ...

  7. 剑指offer-JZ27 二叉树的镜像(C++,附思路)

    描述 操作给定的二叉树,将其变换为源二叉树的镜像. 数据范围:二叉树的节点数[0,1000] , 二叉树每个节点的值 [0,1000] 要求: 空间复杂度 O(n).本题也有原地操作,即空间复杂度 O ...

  8. 剑指offer:对称的二叉树(镜像,递归,非递归DFS栈+BFS队列)

    1. 题目描述 /**请实现一个函数,用来判断一颗二叉树是不是对称的.注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的 */ 2. 递归 思路: /**1.只要pRoot.left和pRo ...

  9. 二叉树翻转(递归 + 非递归)

    文章目录 前言 问题描述 递归实现 非递归实现 参考文献 前言 二叉树翻转是一道经典的面试编程题,经常出现在各大公司的招聘笔试面试环节. 这里还有个趣事,Homebrew 的作者 Max Howell ...

最新文章

  1. [计算机视觉][神经网络与深度学习]Faster R-CNN配置及其训练教程
  2. [攻防世界 pwn]——int_overflow
  3. 关于小程序授权地理位置(wx.getLocation + 用户体验)
  4. Oracle数据库启动以及说明
  5. 计算机应用基础模块2客观题答案 文档,卓顶精文2019计算机应用基础网上形考答案模块2 Word 2010 文字处理系统客观题答案...
  6. hMailServer之发送附件大小限制
  7. 为什么我只贴代码不给你们源码?
  8. go的匿名函数和闭包
  9. less,sass,stylus配置和应用教程及三者比较
  10. 十八、完成登录与注册页面的前端
  11. WebConfig节点详解
  12. readlink()不能读取硬链接的目标
  13. linux 安装so文件,Linux下查找和安装依赖的.so文件
  14. 【文献研究】国际班轮航运的合作博弈:The coopetition game in international liner shipping
  15. 3D建模之ZBrush雕刻教程,神奇上尉角色建模教程,看完你“学废”了吗?
  16. 基于关系图卷积网络的源代码漏洞检测
  17. 【已解决】系统找不到文件 C:\ProgramData\Oracle\Java\javapath\java.exe。
  18. 2014年红帽高峰论坛随笔
  19. php网页地图上自定义,如何添加在线自定义地图
  20. 编写函数求阶乘(完整版)

热门文章

  1. wordpress不同角色显示不同的菜单栏
  2. Django - 应用及分布式路由
  3. Python 一键导出微信阅读记录和笔记!
  4. Java开发人员必备工具之 10 个大数据工具和框架
  5. 如何修复损坏或损坏的照片呢?
  6. android 汉字转字节,安卓汉字转拼音
  7. 华为自己的能力开放平台eSDK
  8. 【艾琪出品】-【计算机】《办公自动化基础》-韩伟颖(2002)南开离线作业学习资料
  9. 斯坦福机器狗的设计与实现 (在组装和测试中遇到的问题及解决办法,亲测有效,出现Host does not exist问题的解决)
  10. 爬虫开发入门:使用 Pyspider 框架开发爬虫