0
点赞
收藏
分享

微信扫一扫

leetcode-简单题-700. 二叉搜索树中的搜索

登高且赋 2022-04-14 阅读 39

https://leetcode-cn.com/problems/search-in-a-binary-search-tree/
就是一个简单的左中右遍历。

//  二叉搜索树最大特点就是有序,左中右有序,即中序遍历是右序的,节点的数值从左到右有序
//  此外,它还有性质:
//  1. 左节点比根节点小
//  2. 右节点比根节点大
//  所以,利用这个性质,就在遍历的时候少走弯路,即(逻辑)
//  1. root.val < val 时, 往右遍历
//  2. root.val > val, 往左遍历
//  else 相等, 返回root
//  传入参数:(节点, 目标val)
//  返回:节点
//  终止条件:
//  if(root == null) return root;
class Solution {
    public TreeNode searchBST(TreeNode root, int val) {
        //System.out.println("root = " + root.val);
        if(root == null) return root;
        if(root.val < val) return searchBST(root.right, val);
        if(root.val > val) return searchBST(root.left, val);
        return root;
    }
}
举报

相关推荐

leetcode-二叉搜索树

0 条评论