leetcode.530 二叉搜索树的最小绝对差

130 阅读1分钟
class Solution {
private:
    vector<int> vec;
    void traversal(TreeNode* root) {
        if (root == NULL) return;
        traversal(root->left);
        vec.push_back(root->val); // 将二叉搜索树转换为有序数组
        traversal(root->right);
    }

public:
    int getMinimumDifference(TreeNode* root) {
        vec.clear();
        traversal(root);
        int min = 100001;
        for(int i = 0; i < vec.size()-1; i++) {
            int cha = vec[i+1] - vec[i];
            min = cha < min ? cha : min;
        }
        return min;
    }


};