Q:

给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。

例如:

输入: 二叉搜索树:5/   \2     13输出: 转换为累加树:18/   \20     13

链接:https://leetcode-cn.com/problems/convert-bst-to-greater-tree/description/

思路:利用递归的思想,初始化一个值作为迭代累加变量,从最右节点开始进行递归

代码:

# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = Noneclass Solution(object):def __init__(self):self.lSum = 0def convertBST(self, root):""":type root: TreeNode:rtype: TreeNode"""if not root:return Noneself.convertBST(root.right)self.lSum += root.valroot.val = self.lSumself.convertBST(root.left)return root

【Leetcode_总结】538. 把二叉搜索树转换为累加树 - python相关推荐

  1. LeetCode 538. 把二叉搜索树转换为累加树 | Python

    538. 把二叉搜索树转换为累加树 题目来源:力扣(LeetCode)https://leetcode-cn.com/problems/convert-bst-to-greater-tree 题目 给 ...

  2. [二叉树遍历|BST]leetcode 538 把二叉搜索树转换为累加树

    [二叉树遍历|BST]leetcode 538 把二叉搜索树转换为累加树 1.题目 题目链接 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree) ...

  3. leetcode c++未初始化_LeetCode 力扣官方题解 | 538. 把二叉搜索树转换为累加树

    力扣 538. 把二叉搜索树转换为累加树(点击查看题目) 力扣​leetcode-cn.com 题目描述 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater ...

  4. Suzy找到实习了吗 Day23 | 二叉树最后一节!669. 修剪二叉搜索树,108. 将有序数组转换为二叉搜索树,538. 把二叉搜索树转换为累加树

    669. 修剪二叉搜索树 题目 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high.通过修剪二叉搜索树,使得所有节点的值在[low, high]中.修剪树 不应该 改变保 ...

  5. Leetcode 538. 把二叉搜索树转换为累加树 C++

    Leetcode 538. 把二叉搜索树转换为累加树 题目 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加 ...

  6. LeetCode 力扣 538. 把二叉搜索树转换为累加树 convertBstToGreaterTree538树

    大家觉得写还可以,可以点赞.收藏.关注一下吧! 也可以到我的个人博客参观一下,估计近几年都会一直更新!和我做个朋友吧!https://motongxue.cn 文章目录 538. 把二叉搜索树转换为累 ...

  7. 538. 把二叉搜索树转换为累加树(java)

    538. 把二叉搜索树转换为累加树 题目描述 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的 ...

  8. 力扣538.把二叉搜索树转换为累加树

    题目来源: 538.把二叉搜索树转换为累加树 题目: 给出二叉 搜索 树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点 node 的新值等于原树中 ...

  9. LeetCode系列538—把二叉搜索树转换为累加树

    题意 538. 把二叉搜索树转换为累加树 题解 方法一:反序中序遍历 class Solution {private:int sum = 0; public:TreeNode* convertBST( ...

最新文章

  1. R语言使用ggpubr包可视化分组条形图(grouped bar plot)、并添加误差条(error bar、误差条显示平均值+/-sd)、添加分组填充色、添加jitter、自定义分组抖动数据点形状
  2. .Net中的AOP系列之《AOP实现类型》
  3. Go语言通过odbc驱动连接华为高斯数据库
  4. Keil(MDK-ARM-STM32)系列教程(二)工具栏详细说明
  5. windows下安装node版本管理工具及nvm use切换不成功问题解决
  6. linux ssh客户端_Linux终端连接Linux服务器
  7. vb 打开sdf数据_DWG、DGN、SDF、DWF!Civil 3D图形数据共享的几种方法
  8. 生产环境下lnmp的权限说明
  9. 2021-06-25绝对定位的理解
  10. Android 自定义View 三板斧之三——重写View来实现全新控件
  11. CAD安装失败Failed Installation aborted, Result=1603
  12. DWM1000DISCOVERY开发板简介
  13. 基于Nodejs+vue开发实现酒店管理系统
  14. 《计算机网络教程》(微课版 第五版) 第二章 物理层 课后习题及答案
  15. c语言fprintf段错误,fprintf由于突然地址更改导致段错误
  16. 网吧无盘用华为服务器,50台主机网吧无盘服务器
  17. 自定义流程比较全的表结构
  18. android开发 鱼动画,自定义Drawable实现灵动的红鲤鱼动画(上篇)
  19. xCode 编写C++程序
  20. 重定向(Redirect)

热门文章

  1. WiFi无线模块学习1——HLK-M30使用
  2. Ubuntu安装Firefox浏览器(硬件:树莓派ARM架构)
  3. Android 12 Captive Portal Wifi 流程
  4. 安装CentOS安装图形桌面
  5. jsp超市管理系统(含源码+数据库)
  6. 英特尔强势上新一大波数据产品,小伙伴们“奔走相告”……
  7. 反光板导航SLAM(四)如何通过两个反光柱估计位姿
  8. vscode的代码一片白问题
  9. rpm包安装时发现缺少其他依赖
  10. 折纸测珠峰python程序_受折纸艺术启发:“月球方舟”将在格林兰岛进行测试