Skip to content
LC-0530 Easy LeetCode

530. Minimum Absolute Difference in BST

Read the full problem statement on LeetCode.
Difficulty: easy Acceptance: 59% Topics: Tree, Depth-First Search, Breadth-First Search, Binary Search Tree, Binary Tree
View full problem on LeetCode
Reference solution (spoiler · python)
# Time:  O(n)
# Space: O(h)

class Solution(object):
    def getMinimumDifference(self, root):
        """
        :type root: TreeNode
        :rtype: int
        """
        def inorderTraversal(root, prev, result):
            if not root:
                return (result, prev)

            result, prev = inorderTraversal(root.left, prev, result)
            if prev: result = min(result, root.val - prev.val)
            return inorderTraversal(root.right, root, result)

        return inorderTraversal(root, None, float("inf"))[0]

Solution from kamyu104/LeetCode-Solutions · MIT