LeetCode-5050-从二叉搜索树到更大和树-C语言

类似于二叉树的中序遍历,只是首先访问右子树,另外在递归过程中,要传一个总的值记录当前已访问节点的和。
代码如下。

void set(struct TreeNode *node, int *val){
    if(!node){
        return;
    }
    
    set(node->right, val);
    node->val += *val;
    *val = node->val;
    set(node->left, val);
}

struct TreeNode* bstToGst(struct TreeNode* root){
    int val = 0;
    set(root, &val);
    return root;
}

你可能感兴趣的:(LeetCode,Leetcode)