diff options
Diffstat (limited to 'other/min_dist_bst_node.cpp')
-rw-r--r-- | other/min_dist_bst_node.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/other/min_dist_bst_node.cpp b/other/min_dist_bst_node.cpp new file mode 100644 index 0000000..5222628 --- /dev/null +++ b/other/min_dist_bst_node.cpp @@ -0,0 +1,20 @@ +// 783. Minimum Distance Between BST Nodes +#include "leetcode.h" + +// given the 'root' of BST, return the minimum difference between the values +// of any two different nodes in the tree! + +class Solution { +public: + int ans = INT_MAX, pre = -1; + int minDiffInBST(TreeNode *root) { + if (root->left != NULL) + minDiffInBST(root->left); + if (pre >= 0) + ans = min(ans, root->val - pre); + pre = root->val; + if (root->right != NULL) + minDiffInBST(root->right); + return ans; + } +}; |