226. 翻转二叉树

翻转一棵二叉树。

示例:

输入:

     4/   \2     7/ \   / \
1   3 6   9

输出:

     4/   \7     2/ \   / \
9   6 3   1

备注:
这个问题是受到 Max Howell 的 原问题 启发的 :

谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode(int x) { val = x; }* }*/
class Solution {// 先序遍历--从顶向下交换// public TreeNode invertTree(TreeNode root) {//     if (root == null) return null;//     // 保存右子树//     TreeNode rightTree = root.right;//     // 交换左右子树的位置//     root.right = invertTree(root.left);//     root.left = invertTree(rightTree);//     return root;// }//中序遍历
//  public TreeNode invertTree(TreeNode root) {
//             if (root == null) return null;
//             invertTree(root.left); // 递归找到左节点
//             TreeNode rightNode= root.right; // 保存右节点
//             root.right = root.left;
//             root.left = rightNode;
//             // 递归找到右节点 继续交换 : 因为此时左右节点已经交换了,所以此时的右节点为root.left
//             invertTree(root.left);
//     }//后序遍历
//  public TreeNode invertTree(TreeNode root) {
//             // 后序遍历-- 从下向上交换
//             if (root == null) return null;
//             TreeNode leftNode = invertTree(root.left);
//             TreeNode rightNode = invertTree(root.right);
//             root.right = leftNode;
//             root.left = rightNode;
//             return root;
//         }//层次遍历public TreeNode invertTree(TreeNode root) {// 层次遍历--直接左右交换即可if (root == null) return null;Queue<TreeNode> queue = new LinkedList<>();queue.offer(root);while (!queue.isEmpty()){TreeNode node = queue.poll();TreeNode rightTree = node.right;node.right = node.left;node.left = rightTree;if (node.left != null){queue.offer(node.left);}if (node.right != null){queue.offer(node.right);}}return root;}}

Java实现 LeetCode 226 翻转二叉树相关推荐

  1. LeetCode:226. 翻转二叉树

    226. 翻转二叉树 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 用递归的方法将二叉树的左右节点互换,核心思想就是交换 源码: struct TreeNode* invertTree(s ...

  2. LeetCode 226 翻转二叉树

    思路 递归: 考虑翻转二叉树根结点的左子树和右子树 递归出口 1.如果root为NULL,返回空节点 if(root==NULL)return NULL; 2.如果root不为NULL,且左右子树全为 ...

  3. LeetCode 226. 翻转二叉树(DFS BFS)

    文章目录 1. 题目信息 2. 解题 2.1 DFS 2.2 BFS 1. 题目信息 翻转一棵二叉树. 示例:输入:4/ \2 7/ \ / \ 1 3 6 9输出:4/ \7 2/ \ / \ 9 ...

  4. leetcode 226. 翻转二叉树

    难度:简单 频次:47 题目: 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点. 解题思路: 1.DFS遍历的时候反转root的左右节点即可 2.后者用队列模拟栈模拟递归 代码 / ...

  5. Leetcode 226. 翻转二叉树 (每日一题 20210819)

    翻转一棵二叉树.示例:输入:4/ \2 7/ \ / \ 1 3 6 9 输出:4/ \7 2/ \ / \ 9 6 3 1链接:https://leetcode-cn.com/problems/in ...

  6. LeetCode 226翻转二叉树-简单

    翻转一棵二叉树. 示例: 输入: 4/ \2 7/ \ / \ 1 3 6 9 输出: 4/ \7 2/ \ / \ 9 6 3 1 代码如下: /*** Definition for a binar ...

  7. leetcode - 226. 翻转二叉树

    翻转一棵二叉树. 示例: 输入: 输出: /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode ...

  8. Leetcode——226. 翻转二叉树

    问题 翻转一个二叉树,例子如下: 输入:4/ \2 7/ \ / \ 1 3 6 9 输出:4/ \7 2/ \ / \ 9 6 3 1 可以看出相当于原二叉树的镜像,也就是像逆置二叉树的每一层 解决 ...

  9. 代码随想录【day 14 二叉树】| 层序遍历 226.翻转二叉树 101.对称二叉树

    代码随想录[day 14 二叉树]| 层序遍历 226.翻转二叉树 101.对称二叉树 层序遍历 卡哥文解 视频讲解 题目链接:102.二叉树的层序遍历 解题思路 代码实现 题目链接:107.二叉树的 ...

最新文章

  1. 不止摩尔定律,计算领域值得学习的定律还有哪些?
  2. android 新浪财经截屏分享,[图]Android 12截图曝光:启用全新UI 增强隐私保护功能...
  3. 使用java poi解析表格
  4. First update-【计算机方面的权威外文数据库(全)】
  5. 网站降低用户跳出率的常见技巧有哪些?
  6. web项目html引入css文件路径,详解Webpack和Webpack-simple中如何引入CSS文件_旧店_前端开发者...
  7. DL之GANDCGNNcGAN:GANDCGNNcGAN算法思路、关键步骤的相关配图和论文集合
  8. HTML中文字布局,HTML文字布局
  9. P2680-运输计划【LCA,树上差分,二分答案】
  10. PC-[WIN7]此计算机无法联接家庭组
  11. linux打印显示etc中的文件,Linux命令之文件内容查看(cat、tac、nl、more、less、head、tail)...
  12. vue生成txt文件下载
  13. 显示器 设置选项 解析
  14. icepak计算机机箱热仿真,基于ANSYSIcepak的密闭机箱散热仿真分析.PDF
  15. 硅谷华人天才CEO被开除,是否会有奇迹发生?
  16. win7与internet时间同步出错_【时间同步出错】win7系统同步internet时间总是提示同步时出错的解决方法...
  17. 时间展示 星期几时英文需要显示成中文问题解决
  18. 精益软件度量之读书笔记(一)度量和组织目标
  19. 新媒体运营教程:完整的用户增长5步方案!
  20. Python 60 天 + 450 题,倾情奉献

热门文章

  1. 【MySQL】建立、写入、修改数据实例操作
  2. Mac 上的 Keynote 讲演文件转ppt格式
  3. 叮当云Android官方,【叮当云】全新版本爆料——产品设计思路
  4. 如何测试芯片二极管特性?
  5. stata绘制roc曲线_[转载]光滑ROC曲线的画法
  6. VueJS的Frappe Charts的简单包装
  7. hdu4343倍增思想
  8. 2月1日发布完毕!口袋妖怪音乐专辑“一日一专辑”发布计划
  9. switch-case的结构及一些注意事项
  10. CakePHP v3.9.3 Connection to database could not be established: SQLSTATE[HY000] [1045] Access