530. 二叉搜索树的最小绝对差

"""
530. 二叉搜索树的最小绝对差
给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。
差值是一个正数,其数值等于两值之差的绝对值。

示例 1:
输入:root = [4,2,6,1,3]
输出:1
示例 2:


输入:root = [1,0,48,null,null,12,49]
输出:1
"""
class Solution(object):
def __init__(self):
self.min_interval = float('inf')
self.last_value = float('-inf')
def getMinimumDifference(self, root):
self.in_order(root)
return self.min_interval

def in_order(self, root):
if not root: return
self.in_order(root.left)
self.min_interval = min(self.min_interval, root.val - self.last_value)
print(self.min_interval)
self.last_value = root.val
self.in_order(root.right)

class TreeNode(object):
def __init__(self, val):
self.val = val
self.left = None
self.right = None

if __name__ == "__main__":
root = TreeNode(1)
root.left = TreeNode(0)
root.right = TreeNode(48)
root.right.left = TreeNode(12)
root.right.right = TreeNode(49)
res = Solution().getMinimumDifference(root)

posted on 2021-12-13 10:09  random_boy  阅读(27)  评论(0)    收藏  举报

导航