1. 程式人生 > 實用技巧 >530. 二叉搜尋樹的最小絕對差

530. 二叉搜尋樹的最小絕對差

給你一棵所有節點為非負值的二叉搜尋樹,請你計算樹中任意兩節點的差的絕對值的最小值。

示例:

輸入:

1
\
3
/
2

輸出:
1

解釋:
最小絕對差為 1,其中 2 和 1 的差的絕對值為 1(或者 2 和 3)。

提示:

樹中至少有 2 個節點。

來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。

# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, x): # self.val = x # self.left = None # self.right = None # Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: def getMinimumDifference(self, root: TreeNode) -> int:
if not root:return pre=float('-inf') _min=float('inf') stack=[] cur=root while stack or cur: while cur: stack.append(cur) cur=cur.left cur=stack.pop() _min=min(_min,cur.val-pre) pre
=cur.val cur=cur.right return _min