aboutsummaryrefslogtreecommitdiff
path: root/other/min_dist_bst_node.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'other/min_dist_bst_node.cpp')
-rw-r--r--other/min_dist_bst_node.cpp20
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;
+ }
+};