leetCode 226.翻转二叉树

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

226. 翻转二叉树 - 力扣(LeetCode)


示例 1:

复制代码
输入:root = [4,2,7,1,3,6,9]
输出:[4,7,2,9,6,3,1]

示例 2:

复制代码
输入:root = [2,1,3]
输出:[2,3,1]

示例 3:

复制代码
输入:root = []
输出:[]

C++代码:

cpp 复制代码
class Solution {
public:
    TreeNode* invertTree(TreeNode* root) {
        if(root==nullptr) return nullptr;
        TreeNode* left = invertTree(root->left);
        TreeNode* right = invertTree(root->right);
        TreeNode* tmp=left;
        root->left=right;
        root->right=tmp;
        return root;
    }
};
cpp 复制代码
TreeNode* tmp=left;
root->left=right;
root->right=tmp;

也可以简洁写成:swap(root->left,root->right);

Python代码:

python 复制代码
class Solution:
    def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:
        if not root:
            return root
        left = self.invertTree(root.left)
        right = self.invertTree(root.right)
        tmp = left
        root.left = right
        root.right = tmp
        return root

# 复杂度分析:
# 时间复杂度:O(N)
# 空间复杂度:O(N)
cpp 复制代码
tmp = left
root.left = right
root.right = tmp

也可以简洁写成:root.left,root.right = right,left

相关推荐
爱读书的小胖5 分钟前
LeetCode 122:买卖股票的最佳时机 II(C)解题分析
算法
结局无敌6 分钟前
React Native for OpenHarmony 实战:三方库 react-native-modal-dialog 的鸿蒙化适配指南
深度学习·算法·react native·react.js·harmonyos
OPEN-F36 分钟前
ROS2系列教程:上位机建图与导航(原理综合)
算法·机器人
weixin_3077791336 分钟前
C++代码实现MATLAB中的fitrtree函数功能
开发语言·c++·算法·matlab
tomwang03221 小时前
路径优化建模、优化算法分类及工程化小结
算法·数学建模·分类
小羊没烦恼!1 小时前
Ajax与JSON的一些总结
android·java·前端·数据库·mysql·算法·okhttp
2501_926978331 小时前
人机通信协议--人和机器之间的交互想象
人工智能·经验分享·算法·ai写作
行者全栈架构师1 小时前
【鸿蒙心迹】互动卡片全链路——把核心功能放到桌面(FormKit 实战)(HarmonyOS 7.x)
前端·算法·架构
无定义_1 小时前
10.11日常训练
算法
Code_Solitude1 小时前
c语言:关于qsoet函数知识点
c语言·数据结构·算法