Leetcode 538:把二叉搜索树转化为累加树

给出二叉搜索 树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点 node 的新值等于原树中大于或等于 node.val 的值之和。

解题思路:

其实就是相当于反中序遍历,然后当前结点的值加上之前遍历结点值的和。

java 复制代码
public class title538 {

    int sum=0;   //sum为之前节点的和
    public TreeNode convertBST(TreeNode root) {
        traversal(root);
        return root;
    }

    //反中序遍历
    public void traversal(TreeNode root){
        if(root==null) return;
        //遍历顺序为 右,中,左
        traversal(root.right);
        root.val=root.val+sum;
        sum=root.val;
        traversal(root.left);
    }
}
相关推荐
weixin_649555671 分钟前
C语言程序设计第四版(何钦铭、颜晖)第七章之利用数组求矩阵各行元素之和并输出
c语言·算法·矩阵
I_LPL2 分钟前
hot 100 普通数组、矩阵专题
java·数据结构·矩阵·动态规划·贪心·数组·求职面试
顺风尿一寸2 分钟前
深入剖析 Linux 内核 TCP Poll 机制:等待、唤醒与同步
java·linux
新时代Java农民工4 分钟前
刚安装好的IDEA在插件库里面搜索不到要安装的插件
java·ide
智者知已应修善业4 分钟前
【输入矩阵将其按副对角线交换后输出】2024-11-27
c语言·c++·经验分享·笔记·线性代数·算法·矩阵
好家伙VCC7 分钟前
# Deno框架实战:从零搭建一个安全、高效的Node.js替代项目 在现代
java·python·安全·node.js
17(无规则自律)9 分钟前
C++ 链表修炼指南
数据结构·c++·算法·leetcode·链表
KhalilRuan10 分钟前
基于OpenGL实现布料模拟
算法
zjjsctcdl11 分钟前
Spring之FactoryBean详解
java·后端·spring
大江东去浪淘尽千古风流人物11 分钟前
【claw】 OpenClaw 的架构设计探索
深度学习·算法·3d·机器人·slam