[LeetCode&Python] Problem 530. Minimum Absolute Difference in BST
Posted chiyeung
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[LeetCode&Python] Problem 530. Minimum Absolute Difference in BST相关的知识,希望对你有一定的参考价值。
Given a binary search tree with non-negative values, find the minimum absolute difference between values of any two nodes.
Example:
Input: 1 3 / 2 Output: 1 Explanation: The minimum absolute difference is 1, which is the difference between 2 and 1 (or between 2 and 3).
Note: There are at least two nodes in this BST.
# Definition for a binary tree node. # class TreeNode(object): # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution(object): def getMinimumDifference(self, root): """ :type root: TreeNode :rtype: int """ diff=10000 stack=[] node=root lastvisited=None while node is not None or stack: while node: stack.append(node) node=node.left node=stack.pop() if node is not None and lastvisited is not None: diff=min(diff,abs(node.val-lastvisited.val)) lastvisited=node node=node.right return diff
以上是关于[LeetCode&Python] Problem 530. Minimum Absolute Difference in BST的主要内容,如果未能解决你的问题,请参考以下文章
C++&Python描述 LeetCode C++&Python描述 LeetCode 剑指 Offer 22. 链表中倒数第k个节点
[LeetCode&Python] Problem 202. Happy Number
[LeetCode&Python] Problem 520. Detect Capital
[LeetCode&Python] Problem 383. Ransom Note