1038. 从二叉搜索树到更大和树

  • 二叉搜索树的遍历,先遍历右子树/左子树,得到正序/反序
  • 这里使用反序遍历,并借助sum变量累加节点值
class Solution {
public:
    int sum = 0;
    TreeNode* bstToGst(TreeNode* root) {
        if(root == nullptr)
            return nullptr;
        bstToGst(root->right);
        sum += root->val;
        root->val = sum;
        bstToGst(root->left);
        return root;
    }
};

你可能感兴趣的:(leetcode,算法,数据结构)