首页 > 其他分享 >代码随想录:翻转二叉树

代码随想录:翻转二叉树

时间:2025-01-09 21:23:44浏览次数:1  
标签:right TreeNode target val nullptr 随想录 二叉树 翻转 left

代码随想录:翻转二叉树

就是遍历

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode() : val(0), left(nullptr), right(nullptr) {}
 *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left),
 * right(right) {}
 * };
 */
class Solution {
public:
    TreeNode* invertTree(TreeNode* root) {

        tra(root);
        return root;
    }

    void tra(TreeNode* target) {
        if (target != NULL) {
            TreeNode* temp = target->left;
            target->left = target->right;
            target->right = temp;
            tra(target->left);
            tra(target->right);
        }
    }
};

标签:right,TreeNode,target,val,nullptr,随想录,二叉树,翻转,left
From: https://www.cnblogs.com/huigugu/p/18662909

相关文章

  • 代码随想录:对称二叉树
    代码随想录:对称二叉树递归挺巧妙的,平时我肯定会用层次遍历,然后双指针看数组是否对称。递归代码:/***Definitionforabinarytreenode.*structTreeNode{*intval;*TreeNode*left;*TreeNode*right;*TreeNode():val(0),left(nullptr),......
  • 完全二叉树的删除
    (1)删除叶子节点找到要删除的节点targetNode找到要删除节点的父节点parent(父节点是否存在)要删除的节点是父节点的左子树还是右子树如果是左子树,则parent.left=null;如果是右子树则parent.right=null。(2)删除只有一个子节点的节点找到要删除的节点targetNode找到......
  • 多路DCDC电源的二叉树分析电路思路,并能快速定位相关电源的设计注意事项
    多路DCDC电源的二叉树分析电路思路,并能快速定位相关电源的设计注意事项多路DC-DC电源系统在现代电子设计中广泛应用,尤其是在需要多个电压轨的设备中,如嵌入式系统、通信设备和消费电子产品。以下是多路DC-DC电源的二叉树分析电路思路,以及相关设计注意事项的快速定位指南。一......
  • 中序和后序构造二叉树
    中序和后序构造二叉树给定二叉树的中序遍历和后序遍历序列,请构造出该二叉树并返回根节点。中序遍历的顺序是左子树->根节点->右子树;后序遍历的顺序是左子树->右子树->根节点。输入格式·一个整数数组inorder,表示中序遍历的结果·一个整数数组postorder,表示后序遍历的......
  • 代码随想录算法训练营第一天 | Leetcode 027、Leetcode 704、Leetcode 977
    Leetcode027双指针覆盖目标元素#include"iostream"#include"vector"usingnamespacestd;intremoveElement(vector<int>&nums,intval){inti=0;for(intj=0;j<nums.size();j++){if(nums[j]!=val){......
  • 【代码随想录】刷题记录(95)-合并区间
    题目描述:以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i]=[starti,endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 示例1:输入:intervals=[[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10]......
  • 【代码随想录】刷题记录(94)-划分字母区间
    题目描述:给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。返回一个表示每个字符串片段的长度的列表。 示例1:输入:s="ababcbacadefegdehijhklij"......
  • 刷题记录(回顾)二叉树-2,3,4,5 二叉树的各种遍历
    二叉树共有两类遍历方式(理解前中后序+层序)DFS:深度优先搜索:即前中后三序遍历所谓前中后序就是:“左”,“中”,“右”这三个元素组成的排列中“中”的位置,中代表处理节点,左代表访问左孩子右代表访问右孩子    前序遍历:中左右,先处理节点后访问左右孩子    中......
  • 数据结构与算法之二叉树: LeetCode 107. 二叉树的层序遍历 II (Ts版)
    二叉树的层序遍历IIhttps://leetcode.cn/problems/binary-tree-level-order-traversal-ii/description/描述给你二叉树的根节点root,返回其节点值自底向上的层序遍历。(即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)示例1输入:root=[3,9,20,null,nul......
  • 代码随想录算法训练营第1天 | 数组理论基础,704. 二分查找,27. 移除元素,977.有序数组的
    1.刷题部分1.1数组基础理论原文链接:代码随想录1.1.1题目内容知识性讲解,点击链接查看原文。1.1.2初见想法是一些很基本的知识,看看有么有什么生疏的。1.1.3看录后想法原来有的语言的二维数组元素地址是可以行与行之间不连续的。1.1.4遇到的困难暂未遇到困难。1.......