二叉树递归题目(一)

一:计算布尔二叉树的值

1.1题目

题目链接:https://leetcode.cn/problems/evaluate-boolean-binary-tree/description/


1.2算法原理


1.3代码

cpp 复制代码
class Solution {
public:
    bool evaluateTree(TreeNode* root) 
    {
        if(root->right == nullptr)
            return root->val;

        bool leftval = evaluateTree(root->left);
        bool rightval = evaluateTree(root->right);

        return root->val == 2 ?  rightval | leftval : rightval & leftval;
    }
};

二:求根节点到叶节点数字之和

2.1题目

题目链接:https://leetcode.cn/problems/sum-root-to-leaf-numbers/description/


2.2算法原理


2.3代码

cpp 复制代码
class Solution {
public:
    int sumNumbers(TreeNode* root) {
        return dfs(root,0);
    }

    int dfs(TreeNode* root,int presum)
    {
        int sum = presum * 10+ root->val;

        if(root->left == nullptr && root->right == nullptr)
            return sum;
        
        int leftsum = 0, rightsum = 0;
        if(root->left)
            leftsum = dfs(root->left,sum);
        if(root->right)
            rightsum = dfs(root->right,sum);

        return leftsum + rightsum;
    }
};

三:二叉树剪枝

3.1题目

题目链接:https://leetcode.cn/problems/binary-tree-pruning/


3.2算法原理


3.3代码实现

cpp 复制代码
class Solution {
public:
    TreeNode* pruneTree(TreeNode* root) 
    {
        if(root == nullptr)
            return nullptr;

        root->left =  pruneTree(root->left);
        root->right = pruneTree(root->right);

        if(root->val == 0 && root->left == nullptr && root->right == nullptr)
        {
            //delete root;//内存泄漏,但是如果节点不是new出来的delete会报错
            root = nullptr;
        }
        return root;  
    }
};
相关推荐
To_OC7 小时前
LC 51 N 皇后:我以为难的是回溯,结果栽在了对角线下标
javascript·算法·leetcode
2401_841495647 小时前
【操作系统】进程同步与互斥实验报告
c++·算法·操作系统·进程·并发·同步·互斥
fqbqrr7 小时前
2607C++,soui与安卓
c++·soui
fqbqrr11 小时前
2607C++,使用微软detours勾挂工具
c++
人邮异步社区11 小时前
怎么把C语言学到精通?
c语言·开发语言
爱刷碗的苏泓舒11 小时前
PPP-AR 中的参考星选取:数学原理、评价指标与切换处理
算法·gnss·模糊度固定·ppp-ar·星间单差·参考星·卫星端偏差
蓝悦无人机14 小时前
C++基础 — 函数总结
开发语言·c++
烬羽14 小时前
递归老写崩?一个"退回"公式,把回溯题变成填空题
javascript·深度学习·算法
闪电悠米14 小时前
力扣hot100-41.缺失的第一个正数-原地哈希详解
数据结构·算法·哈希算法