Easy
Minimum Distance Between BST Nodes — Python
Full explanation · Time O(n) · Space O(h)
# Time: O(n)
# Space: O(h)
class Solution(object):
def minDiffInBST(self, root):
"""
:type root: TreeNode
:rtype: int
"""
def dfs(node):
if not node:
return
dfs(node.left)
self.result = min(self.result, node.val-self.prev)
self.prev = node.val
dfs(node.right)
self.prev = float('-inf')
self.result = float('inf')
dfs(root)
return self.result