LeetCode 700. 二叉搜索树中的搜索

解题思路

复制代码
1 二叉搜索树的定义:二叉树的任意一个root满足,root.val>root.right.val&&root.val<root.left.val。
2 深度优先搜索。

相关代码

复制代码
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public TreeNode searchBST(TreeNode root, int val) {
        if(root==null) return null;
        if(root.val==val) return root;
        if(root.left!=null&&root.val>val) return searchBST(root.left,val);
        if(root.right!=null&&root.val<val) return searchBST(root.right,val);
        return null;
    }
}
相关推荐
khalil10205 小时前
代码随想录算法训练营Day-46 动态规划13 | 647. 回文子串、516.最长回文子序列、动态规划总结
数据结构·c++·算法·leetcode·动态规划·回文子串·回文子序列
学习3人组6 小时前
柔性排产时序算法+中间过程+阶段目标 细化表格
算法·mes
he___H6 小时前
算法快与慢--哈希+双指针
算法·leetcode·哈希算法
呃呃本6 小时前
算法题(回溯)
算法
刀法如飞6 小时前
Rust数组去重的20种实现方式,AI时代用不同思路解决问题
人工智能·算法·ai编程
yxc_inspire6 小时前
25年CCPC福建邀请赛补题
学习·算法
Raink老师6 小时前
用100道题拿下你的算法面试(链表篇-4):合并 K 个有序链表
算法·链表·面试
Liangwei Lin7 小时前
LeetCode 20. 有效的括号
算法
IronMurphy7 小时前
【算法四十四】322. 零钱兑换
算法
凯瑟琳.奥古斯特7 小时前
力扣2760 C++滑动窗口解法
数据结构·c++·算法·leetcode·职场和发展