C++实现二叉树左右子树交换算法

C++实现二叉树左右子树交换算法-CSDN博客

复制代码
struct TreeNode {
    int val;
    TreeNode *left;
    TreeNode *right;
    TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
};
 
void swapLeftRight(TreeNode* node) {
    if (node == nullptr) return;
    TreeNode* temp = node->left;
    node->left = node->right;
    node->right = temp;
    swapLeftRight(node->left);
    swapLeftRight(node->right);
}
相关推荐
橘子汽水1681 小时前
Leetcode 23,543合并K个升序链表,二叉树的直径
算法·leetcode·链表
huameinan狮子1 小时前
Adaboost算法原理与计算实例
算法
Tri_Function1 小时前
动态规划DP1(c++)
c++
别怪我很水1 小时前
API中提供了VelocityTracker类用于计算触摸事件MotionEvent的速度,而其内部默认使用的方法就是最小二乘法,本 ...
算法·gitee·最小二乘法
名字还没想好☜2 小时前
Next.js ‘use client‘ 到底加在哪:Server/Client Components 边界与常见报错
开发语言·前端·javascript·react·next.js
酷在前行4 小时前
【R生态】PERMANOVA 进阶实战:距离选择、PERMDISP、两两比较与受限置换(保姆级教程)
开发语言·r语言
cxr8284 小时前
Graphify vs GitNexus vs CodeGraph — 三工具架构深度对比
开发语言·架构·知识图谱
清水迎朝阳4 小时前
客户端软件 — 用户统计方案
服务器·c++·客户端·用户统计
Re.不晚4 小时前
挑战做100道力扣算法- DAY1
算法·leetcode·职场和发展