代码随想录算法训练营第二十一天|530. 二叉搜索树的最小绝对差、

发布时间 2023-05-30 11:55:35作者: 小吴要努力

【参考链接】

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

【注意】

1.二叉搜索树采用中序遍历,其实就是一个有序数组。

2.使用双指针,更快。

【代码】

 1 # Definition for a binary tree node.
 2 # class TreeNode(object):
 3 #     def __init__(self, val=0, left=None, right=None):
 4 #         self.val = val
 5 #         self.left = left
 6 #         self.right = right
 7 class Solution(object):
 8     def getMinimumDifference(self, root):
 9         """
10         :type root: TreeNode
11         :rtype: int
12         """
13         global pre, minval
14         pre = None
15         minval = 10**5
16         self.traversal(root)
17         return minval
18 
19     def traversal(self, root):
20         global pre, minval
21         if not root:
22             return None
23         #
24         self.traversal(root.left)
25         
26         #
27         if pre and root.val - pre.val < minval:
28             minval = root.val - pre.val
29         pre = root
30 
31         #
32         self.traversal(root.right)