业绩很牛的销售,都在练基本功!
2025/12/25 23:20:48
Problem: 783. Minimum Distance Between BST Nodes 二叉搜索树节点最小距离
耗时100%,树bst的中序遍历【左根右】就是所有node值排序以后的结果,所以最小值一定在相邻两个数字差之间
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {} * }; */ class Solution { public: vector<int> tr; void midTra(TreeNode* root) { if(root==nullptr) return; midTra(root->left); tr.push_back(root->val); midTra(root->right); } int minDiffInBST(TreeNode* root) { int mi = INT_MAX; midTra(root); for(int i = 1; i < tr.size(); i++) { mi = min(mi, tr[i] - tr[i-1]); } return mi; } };