LintCode 661 Convert BST to Greater Tree
来源:互联网 发布:网络短信发送平台 编辑:程序博客网 时间:2024/06/03 20:50
Given a Binary Search Tree (BST), convert it to a Greater Tree such that every key of the original BST is changed to the original key plus sum of all keys greater than the original key in BST.
样例
Given a binary search Tree `{5,2,3}`:
5 / \ 2 13
Return the root of new tree
18 / \ 20 13
思路:
先遍历右子树,再遍历左子树。
"""Definition of TreeNode:class TreeNode: def __init__(self, val): self.val = val self.left, self.right = None, None"""class Solution: # @param {TreeNode} root the root of binary tree # @return {TreeNode} the new root def traverseTree(self, root, prenum): if root.left == None and root.right == None: tmp = root.val root.val += prenum return tmp leftnum = 0 rightnum = 0 tmp = root.val if root.right != None: rightnum = self.traverseTree(root.right, prenum) root.val += (rightnum + prenum) if root.left != None: leftnum = self.traverseTree(root.left, root.val) return tmp + leftnum + rightnum def convertBST(self, root): # Write your code here if root == None: return root rightnum = 0 if root.right != None: rightnum = self.traverseTree(root.right, 0) root.val += rightnum if root.left != None: self.traverseTree(root.left, root.val) return root
阅读全文
0 0
- lintcode(661)Convert BST to Greater Tree
- LintCode 661 Convert BST to Greater Tree
- LintCode-Convert BST to Greater Tree
- lintcode Convert BST to Greater Tree
- LintCode Convert BST to Greater Tree
- lintcode convert bst to greater tree
- Convert BST to Greater Tree-LintCode
- LintCode Convert BST to Greater Tree
- lintcode——Convert BST to Greater Tree
- LINTCODE——Convert BST to Greater Tree
- Convert BST to Greater Tree
- Convert BST to Greater Tree
- Convert BST to Greater Tree
- Convert BST to Greater Tree
- Convert BST to Greater Tree
- Convert BST to Greater Tree
- Convert BST to Greater Tree
- Convert BST to Greater Tree
- 微信出现大面积故障,调程序出现3003错误。
- Java面试题全集(中)
- Java面试题全集(下)
- C#-通用数据验证类
- wx.navigateTo/wx.redirectTo 不能跳转
- LintCode 661 Convert BST to Greater Tree
- org.hibernate.InvalidMappingException: Could not parse mapping document from resource
- JVM
- ccf认证炉石传说70分错误
- 快速求第n位卡特兰数模板
- JAVA-三种代理模式(静态、动态、子类/Cglib代理)
- 练耳大师 EarMaster Pro 6 破解版下载 免费激活版
- 网易2017校园招聘笔试程序题(分田地)
- 萌新的linux之旅27