【力扣每日一题】力扣938二叉搜索树的范围和

题目来源

力扣938二叉搜索树的范围和

题目概述

给定二叉搜索树的根结点 root ,返回值位于范围 [low, high] 之间的所有结点的值的和。

思路分析

递归遍历树,判断遇到的节点是否满足要求,满足则加入结果。

代码实现

java实现

java 复制代码
class Solution {
    int res = 0;
    public int rangeSumBST(TreeNode root, int low, int high) {
        if (root == null) {
            return 0;
        }
        if (root.val <= high && root.val >= low) {
            res += root.val;
        }
        if (root.val > low && root.left != null) {
            rangeSumBST(root.left, low, high);
        }
        if (root.val < high && root.right != null) {
            rangeSumBST(root.right, low, high);
        }
        return res;
    }
}

c++实现

cpp 复制代码
class Solution {
public:
    int res = 0;
    int rangeSumBST(TreeNode* root, int low, int high) {
        if (root == nullptr) {
            return 0;
        }
        if (root->val <= high && root->val >= low) {
            res += root->val;
        }
        if (root->val > low && root->left != nullptr) {
            rangeSumBST(root->left, low, high);
        }
        if (root->val < high && root->right != nullptr) {
            rangeSumBST(root->right, low, high);
        }
        return res;
    }
};
相关推荐
小郭团队13 分钟前
2_1_七段式SVPWM (经典算法)算法理论与 MATLAB 实现详解
嵌入式硬件·算法·硬件架构·arm·dsp开发
充值修改昵称22 分钟前
数据结构基础:从二叉树到多叉树数据结构进阶
数据结构·python·算法
雨中飘荡的记忆29 分钟前
深度详解Spring Context
java·spring
Tao____33 分钟前
JAVA开源物联网平台
java·物联网·mqtt·开源·ruoyi
Deepoch34 分钟前
Deepoc数学大模型:发动机行业的算法引擎
人工智能·算法·机器人·发动机·deepoc·发动机行业
yqd6661 小时前
SpringSecurity的使用
java·spring
-To be number.wan1 小时前
【数据结构真题解析】哈希表中等难度挑战:冲突处理与查找效率深度剖析
数据结构·哈希算法
csdn_aspnet1 小时前
C 语言的优雅回归:从零手造数据结构
c语言·数据结构
点云SLAM1 小时前
C++内存泄漏检测之Windows 专用工具(CRT Debug、Dr.Memory)和Linux 专业工具(ASan 、heaptrack)
linux·c++·windows·asan·dr.memory·c++内存泄漏检测·c++内存管理
仙俊红1 小时前
Java Map 家族核心解析
java·开发语言