783. Minimum Distance Between BST Nodes

Posted bernieloveslife

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了783. Minimum Distance Between BST Nodes相关的知识,希望对你有一定的参考价值。

Given a Binary Search Tree (BST) with the root node root, return the minimum difference between the values of any two different nodes in the tree.

Example :

Input: root = [4,2,6,1,3,null,null]
Output: 1
Explanation:
Note that root is a TreeNode object, not an array.

The given tree [4,2,6,1,3,null,null] is represented by the following diagram:

          4
        /         2      6
     /     
    1   3  

while the minimum difference in this tree is 1, it occurs between node 1 and node 2, also between node 3 and node 2.

Note:

  1. The size of the BST will be between 2 and 100.
  2. The BST is always valid, each node‘s value is an integer, and each node‘s value is different.
# Definition for a binary tree node.
class TreeNode:
    def __init__(self, x):
        self.val = x
        self.left = None
        self.right = None

class Solution:
    def minDiffInBST(self, root):
        """
        :type root: TreeNode
        :rtype: int
        """
        a = []
        def inorder(root):
            if root.left:
                inorder(root.left)
            a.append(root.val)
            if root.right:
                inorder(root.right)
        res = 100000
        inorder(root)
        for i in range(len(a)-1):
            res = min(res,a[i+1]-a[i])
        return res



以上是关于783. Minimum Distance Between BST Nodes的主要内容,如果未能解决你的问题,请参考以下文章

783. Minimum Distance Between BST Nodes

783. Minimum Distance Between BST Nodes

783. Minimum Distance Between BST Nodes

783. Minimum Distance Between BST Node

[leetcode-783-Minimum Distance Between BST Nodes]

783. Minimum Distance Between BST Nodes - Easy