news 2026/5/10 18:21:20

LC.538 | 把二叉搜索树转换为累加树 | 树 | 逆向中序遍历(右-根-左)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LC.538 | 把二叉搜索树转换为累加树 | 树 | 逆向中序遍历(右-根-左)

输入:二叉搜索树根节点root(节点值各不相同)。

要求:将其转换为累加树(Greater Sum Tree):
每个节点的新值 = 原树中所有大于等于该节点值的节点值之和。

输出:转换后的树根节点TreeNode*(原地修改后返回root)。


思路:

BST 的中序遍历(左-根-右)是递增序列。
那我们如果想做“后缀和”(从大到小累加),就把遍历方向反过来:

逆向中序遍历:右 -> 根 -> 左
访问顺序从大到小,维护一个滚动累加sum

遍历到某个节点时:

  1. 先走右子树(更大的值先处理)
  2. sum += node->val
  3. node->val = sum(把当前节点改成“>= 自己的总和”)
  4. 再走左子树

补充:
也能用“两次正序中序”做:第一次中序存有序数组并做后缀和映射,第二次再中序回填。
但那是 O(N) 额外空间;本题一趟逆向中序就能原地搞定。


复杂度:

  • 时间复杂度:O(N)
  • 空间复杂度:O(H)(递归栈,H 为树高)

classSolution{public:TreeNode*convertBST(TreeNode*root){sum=0;reverseInorder(root);returnroot;}private:intsum;voidreverseInorder(TreeNode*node){if(node==nullptr)return;reverseInorder(node->right);sum+=node->val;node->val=sum;reverseInorder(node->left);}};
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/8 23:44:16

饮食饮水代谢检测系统 呼吸能量饮食饮水代谢检测系统 大鼠代谢系统 小鼠代谢系统

动物代谢监测系统具有多通量、实时统计、自动化、高准确性等优点,极大地提高了药物研发和基础生命科学研究的效率,并从根本上减少手工操作带来数据偏差及误差。在动物无拘束状态下,进行多通道测量,记录软件能实时统计大小鼠的饮食量、饮水量、…

作者头像 李华
网站建设 2026/5/8 1:08:58

智能论文改写工具推荐,8款AI平台助你轻松完成写作

目前市面上有多款AI论文辅助工具,通过对8个主流平台的综合评测发现,这些工具在论文降重、降低AI生成内容检测率以及辅助写作等方面各具特色,根据实际测试结果和用户评价显示,其性能表现主要取决于处理效率、内容准确度及操作便捷性…

作者头像 李华
网站建设 2026/5/8 19:50:32

基于SpringBoot+Spark+vue的在线广告推荐系统

前言 在线广告推荐系统的研究与开发从理论上讲,该系统涉及数据挖掘、机器学习、用户行为分析等多个前沿领域,为研究者提供了一个综合性的研究课题。通过不断优化推荐算法,可以推动相关理论的发展,特别是在大数据处理和实时推荐技术…

作者头像 李华
网站建设 2026/5/6 20:10:01

上位机是什么意思?图文并茂的新手教程

上位机是什么?一文搞懂工业控制中的“大脑”角色你有没有在工厂里见过这样的场景:一个操作员坐在电脑前,轻点几下鼠标,整条生产线就开始有序运转;屏幕上跳动着各种曲线、仪表盘和报警信息,仿佛一切尽在掌握…

作者头像 李华
网站建设 2026/5/6 12:37:12

你了解‌板卡控制的架构吗?‌板卡控制和PLC控制有什么区别

‌板卡控制在智能制造、能源管理、医疗研发等领域均有所使用,由此可见‌板卡控制的重要性。为增进大家对‌板卡控制的认识,本文将对‌板卡控制的架构与功能以及‌板卡控制与PLC控制的区别予以介绍。如果你对‌板卡控制具有兴趣,不妨继续往下阅…

作者头像 李华
网站建设 2026/5/8 7:18:39

AI论文降重与写作工具推荐:8个热门网站详细对比

在众多AI论文工具中,选择一款适合自己需求的平台可能令人眼花缭乱。本文将对比8款热门工具,重点聚焦降重、降AIGC率、写论文等功能。工具排名基于实测数据和用户反馈,确保客观实用性。以下是简要排行表(基于效率、准确性和易用性&…

作者头像 李华