当前为游客只读模式。登录后可提交代码判题并保存草稿与进度。
练题计划 · 力扣 HOT 100
把二叉搜索树转换为累加树
中等convertBST()时间限制 2000 ms内存限制 128 MB复杂度要求 时间 O(n),空间 O(h)
把二叉搜索树转换为累加树
给出二叉搜索树(BST)的根节点,把它转换为一棵累加树(Greater Sum Tree),使得每个节点 node 的新值等于原树中大于或等于 node.val 的值之和。
约定
- 树是一棵二叉搜索树。
- 返回转换后的根节点(原地修改即可)。
- 树用层序数组表示,
null表示空节点。
输入
root:BST 根节点,节点数范围[0, 10^4],节点值范围-10^4 ~ 10^4
输出
转换后的树(层序数组表示)。
示例一
输入:
root = [4,1,6,0,2,5,7,null,null,null,3,null,null,null,8]
输出:
[30,36,21,36,35,26,15,null,null,null,33,null,null,null,8]
示例二
输入:
root = [0,null,1]
输出:
[1,null,1]
示例三
输入:
root = [3,2,4]
输出:
[7,9,4]
复杂度要求
- 时间复杂度:
O(n) - 空间复杂度:
O(h),递归栈
Loading...
输入
[[4,1,6,0,2,5,7,null,null,null,3,null,null,null,8]]
预期输出
[30,36,21,36,35,26,15,null,null,null,33,null,null,null,8]