力扣【669. 修剪二叉搜索树】Java题解

一开始在想为什么题目说存在唯一答案。然后发现是二叉搜索树就合理了。如下图:如果0节点小于low,那其左子树也都小于low,故可以排除;对于4,其右子树也是可以排除。

代码如下:

csharp 复制代码
class Solution {
    public TreeNode trimBST(TreeNode root, int low, int high) {
        if(root == null) return null;
        if(root.val < low) return trimBST(root.right,low,high);
        if(root.val > high) return trimBST(root.left,low,high);
        root.left = trimBST(root.left,low,high);
        root.right = trimBST(root.right,low,high);
        return root;
    }
}
相关推荐
西岭千秋雪_7 小时前
Kafka客户端整合
java·spring boot·分布式·kafka·linq
努力学习的小廉7 小时前
我爱学算法之—— 字符串
c++·算法
leonardee7 小时前
Golang笔记——Interface类型
java·后端
我是好小孩7 小时前
【Android】RecyclerView的高度问题、VH复用概念、多子项的实现;
android·java·网络
张彦峰ZYF7 小时前
高并发优惠权益聚合接口的优雅实现(含超时控制 + 来源标识 + Fallback 降级)
java·后端·面试
4Forsee7 小时前
【Android】模板化解决复杂场景的滑动冲突问题
android·java·rpc
若水不如远方8 小时前
深入 Dubbo 服务暴露机制:从注解到网络的完整链路剖析
java·dubbo
tanxinji8 小时前
Netty编写Echo服务器
java·netty
yuuki2332338 小时前
【数据结构】常见时间复杂度以及空间复杂度
c语言·数据结构·后端·算法