【Leetcode_总结】538. 把二叉搜索树转换为累加树 - python
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相关推荐
- LeetCode 538. 把二叉搜索树转换为累加树 | Python
538. 把二叉搜索树转换为累加树 题目来源:力扣(LeetCode)https://leetcode-cn.com/problems/convert-bst-to-greater-tree 题目 给 ...
- [二叉树遍历|BST]leetcode 538 把二叉搜索树转换为累加树
[二叉树遍历|BST]leetcode 538 把二叉搜索树转换为累加树 1.题目 题目链接 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree) ...
- leetcode c++未初始化_LeetCode 力扣官方题解 | 538. 把二叉搜索树转换为累加树
力扣 538. 把二叉搜索树转换为累加树(点击查看题目) 力扣leetcode-cn.com 题目描述 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater ...
- Suzy找到实习了吗 Day23 | 二叉树最后一节!669. 修剪二叉搜索树,108. 将有序数组转换为二叉搜索树,538. 把二叉搜索树转换为累加树
669. 修剪二叉搜索树 题目 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high.通过修剪二叉搜索树,使得所有节点的值在[low, high]中.修剪树 不应该 改变保 ...
- Leetcode 538. 把二叉搜索树转换为累加树 C++
Leetcode 538. 把二叉搜索树转换为累加树 题目 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加 ...
- LeetCode 力扣 538. 把二叉搜索树转换为累加树 convertBstToGreaterTree538树
大家觉得写还可以,可以点赞.收藏.关注一下吧! 也可以到我的个人博客参观一下,估计近几年都会一直更新!和我做个朋友吧!https://motongxue.cn 文章目录 538. 把二叉搜索树转换为累 ...
- 538. 把二叉搜索树转换为累加树(java)
538. 把二叉搜索树转换为累加树 题目描述 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的 ...
- 力扣538.把二叉搜索树转换为累加树
题目来源: 538.把二叉搜索树转换为累加树 题目: 给出二叉 搜索 树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点 node 的新值等于原树中 ...
- LeetCode系列538—把二叉搜索树转换为累加树
题意 538. 把二叉搜索树转换为累加树 题解 方法一:反序中序遍历 class Solution {private:int sum = 0; public:TreeNode* convertBST( ...
最新文章
- R语言使用ggpubr包可视化分组条形图(grouped bar plot)、并添加误差条(error bar、误差条显示平均值+/-sd)、添加分组填充色、添加jitter、自定义分组抖动数据点形状
- .Net中的AOP系列之《AOP实现类型》
- Go语言通过odbc驱动连接华为高斯数据库
- Keil(MDK-ARM-STM32)系列教程(二)工具栏详细说明
- windows下安装node版本管理工具及nvm use切换不成功问题解决
- linux ssh客户端_Linux终端连接Linux服务器
- vb 打开sdf数据_DWG、DGN、SDF、DWF!Civil 3D图形数据共享的几种方法
- 生产环境下lnmp的权限说明
- 2021-06-25绝对定位的理解
- Android 自定义View 三板斧之三——重写View来实现全新控件
- CAD安装失败Failed Installation aborted, Result=1603
- DWM1000DISCOVERY开发板简介
- 基于Nodejs+vue开发实现酒店管理系统
- 《计算机网络教程》(微课版 第五版) 第二章 物理层 课后习题及答案
- c语言fprintf段错误,fprintf由于突然地址更改导致段错误
- 网吧无盘用华为服务器,50台主机网吧无盘服务器
- 自定义流程比较全的表结构
- android开发 鱼动画,自定义Drawable实现灵动的红鲤鱼动画(上篇)
- xCode 编写C++程序
- 重定向(Redirect)
热门文章
- WiFi无线模块学习1——HLK-M30使用
- Ubuntu安装Firefox浏览器(硬件:树莓派ARM架构)
- Android 12 Captive Portal Wifi 流程
- 安装CentOS安装图形桌面
- jsp超市管理系统(含源码+数据库)
- 英特尔强势上新一大波数据产品,小伙伴们“奔走相告”……
- 反光板导航SLAM(四)如何通过两个反光柱估计位姿
- vscode的代码一片白问题
- rpm包安装时发现缺少其他依赖
- 折纸测珠峰python程序_受折纸艺术启发:“月球方舟”将在格林兰岛进行测试