给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值

给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值

 

/**

 * Definition for a binary tree node.

 * public class TreeNode {

 *     int val;

 *     TreeNode left;

 *     TreeNode right;

 *     TreeNode(int x) { val = x; }

 * }

 */

class Solution {

        int pre=-1;

        int min=10000;

    public int getMinimumDifference(TreeNode root) {

            f(root);

            return min;

 

    }

    public void f(TreeNode root){

        if(root!=null){

            f(root.left);

            if(pre==-1){

                pre=root.val;

            }else{

                min=Math.min(min,root.val-pre);

                pre=root.val;

            }

            f(root.right);

        }

    }

}