【LeetCode】【HOT】226. 翻转二叉树(递归)
【LeetCode】【HOT】226. 翻转二叉树
文章目录
- 【LeetCode】【HOT】226. 翻转二叉树
package hot;import java.util.ArrayDeque;
import java.util.ArrayList;class TreeNode{int val;TreeNode left;TreeNode right;TreeNode(int val){this.val = val;}
}public class Solution226 {public static void main(String[] args) {TreeNode node1 = new TreeNode(4);TreeNode node2 = new TreeNode(2);TreeNode node3 = new TreeNode(7);TreeNode node4 = new TreeNode(1);TreeNode node5 = new TreeNode(3);TreeNode node6 = new TreeNode(6);TreeNode node7 = new TreeNode(9);node1.left = node2;node1.right = node3;node2.left = node4;node2.right = node5;node3.left = node6;node3.right = node7;Solution226 solution = new Solution226();System.out.println(solution.levelOrder(solution.method(node1)));}private TreeNode method(TreeNode root){if(root == null) return null;TreeNode left = method(root.left);TreeNode right = method(root.right);root.left = right;root.right = left;return root;}private ArrayList<Integer> levelOrder(TreeNode root){ArrayList<Integer> res = new ArrayList<>();ArrayDeque<TreeNode> queue = new ArrayDeque<>();TreeNode temp = new TreeNode(0);queue.add(root);while(!queue.isEmpty()){temp = queue.poll();res.add(temp.val);if(temp.left != null) queue.add(temp.left);if(temp.right != null) queue.add(temp.right);}return res;}
}//时间复杂度为 O(n)
//空间复杂度为 O(n)
【LeetCode】【HOT】226. 翻转二叉树(递归)相关推荐
- leetcode系列-226.翻转二叉树
题目描述: 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点. 示例 1: 输入:root = [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] /*** Def ...
- 算法leetcode|剑指 Offer 27. 二叉树的镜像|226. 翻转二叉树(rust很强)
文章目录 剑指 Offer 27. 二叉树的镜像|226. 翻转二叉树: 样例 1: 限制: 分析 题解 rust go c++ java python 原题传送门:https://leetcode. ...
- LeetCode:226. 翻转二叉树
226. 翻转二叉树 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 用递归的方法将二叉树的左右节点互换,核心思想就是交换 源码: struct TreeNode* invertTree(s ...
- Java实现 LeetCode 226 翻转二叉树
226. 翻转二叉树 翻转一棵二叉树. 示例: 输入: 4/ \2 7/ \ / \ 1 3 6 9 输出: 4/ \7 2/ \ / \ 9 6 3 1 备注: 这个问题是受到 Max Howell ...
- 226. 翻转二叉树【58】
难度等级:容易 上一篇算法: 543. 二叉树的直径[71] 力扣此题地址: 226. 翻转二叉树 - 力扣(Leetcode) 1.题目:226. 翻转二叉树 给你一棵二叉树的根节点 root ,翻 ...
- 代码随想录算法训练营第十五天| 102层序遍历、226.翻转二叉树、101. 对称二叉树
层序遍历 参考文章:代码随想录 解题思路: 层序遍历一个二叉树.就是从左到右一层一层的去遍历二叉树.这种遍历的方式和我们之前讲过的都不太一样. 需要借用一个辅助数据结构即队列来实现,队列先进先出,符合 ...
- 代码随想录【day 14 二叉树】| 层序遍历 226.翻转二叉树 101.对称二叉树
代码随想录[day 14 二叉树]| 层序遍历 226.翻转二叉树 101.对称二叉树 层序遍历 卡哥文解 视频讲解 题目链接:102.二叉树的层序遍历 解题思路 代码实现 题目链接:107.二叉树的 ...
- 代码随想录算法训练营第15天,102.二叉树的层序遍历、226.翻转二叉树、101.对称二叉树
102.二叉树的层序遍历.226.反转二叉树.101.对称二叉树 102.二叉树的层序遍历 二叉树的层次遍历,我们可以定义一个队列, 当访问到某一个节点时,我们将它存在的左右节点放入队列中,便可达到按 ...
- 代码随想录算法训练营第十五天 | 102. 二叉树的层序遍历 | 226.翻转二叉树 | 101. 对称二叉树
递归三部曲 确定递归函数的参数和返回值 确定终止条件 确定单层递归的逻辑 102. 二叉树的层序遍历 题解及想法 解法一 :递归法 class Solution {public List<Lis ...
最新文章
- 云监控服务产品优势与应用场景
- 科大星云诗社动态20210416
- 实时控制软件设计第二周作业-停车场门禁控制系统状态机设计
- 全球各国家.INFO域名注册量统计:中国排名第八
- qbittorrent container 改共享文件_SSH连接docker中的container
- flask异步操作_从Flask到FastAPI的平滑迁移
- Hyper-V 2016 系列教程45 System Center 2016 Data Protection Manager 可以备份什么
- 数据绑定表达式语法(Eval,Bind区别)
- pytroch预训练网络ResNet
- Java词汇表(三)L——O
- 对mysql having 的理解
- 百度云盘海外版免费不限速,就是国内不能用!
- web页面视频播放器选型
- 不良资产剥离或许将成为历史名词
- c语言int作用,C语言中的int max(int x,int y) 究竟有何作用?
- Codeforces Round #739 (Div. 3) E. Polycarp and String Transformation
- 指纹的对比分析系统概述
- 从《三体》中的“降维打击”看网络世界,论维度升级的方法与实践
- 惠而浦扫地机器人充不进电_惠而浦 扫地狗等扫地机器人清扫效果差
- R语言运行环境安装配置
热门文章
- mlp参数调整_0基础搞懂自动驾驶传统算法与深度学习的鸿沟-PID控制算法与MLP优化方法...
- 树莓派输出pwm波c语言,树莓派Ubuntu18.04使用pigpio库产生PWM波实现舵机控制
- linux ext4的块大小,linux – ext3 / ext4物理块大小视图
- nexus、maven私服仓库(一)
- Go语言基础练习题系列2
- mac实现ssh的免密远程登录
- Linux 2.6.39.1 Hello world 驱动总结
- 关于blog [转贴]来自网络
- python统计元音总数_python – 元音序列计数
- 初入SysML之模块定义图