栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【Leetcode】每日一题2021/10/09

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Leetcode】每日一题2021/10/09

  • 思路
    首先明确这是一棵二叉搜索树,左小右大,利用这个特征,一直判断至叶子节点,若无则返回null,若有则返回对应的节点。
    采用前序的递归遍历,添加对应条件进行相关处理。
    递归三要素
    递归函数的参数和返回值:参数就是树节点(来自上层节点的子节点)和目标值,返回值为null或对应的树节点;
    递归的终止条件:节点为null,返回null,节点为叶子节点且值相等,返回此节点;
    递归的单层逻辑:当前节点的值不等于目标值,则进入下一层,若目标值大于当前节点,进右子树,若目标值小于当前节点,进左子树。
class Solution {
    public TreeNode searchBST(TreeNode root, int val) {
        if (root == null) {
            return null;
        }
        if (val == root.val) {
            return root;
        }
        if (val > root.val) {
            return searchBST(root.right, val);
        }
        if (val < root.val) {
            return searchBST(root.left, val);
        }
        return null;
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/306655.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号