700. 二叉搜索树中的搜索

给定二叉搜索树(BST)的根节点和一个值。 你需要在BST中找到节点值等于给定值的节点。 返回以该节点为根的子树。 如果节点不存在,则返回 NULL。

例如,

给定二叉搜索树:

  	4
/ \
2 7
/ \
1 3

和值: 2

你应该返回如下子树:

 2
/ \
1 3

在上述示例中,如果要找的值是 5,但因为没有节点值为 5,我们应该返回 NULL。

/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
public TreeNode searchBST(TreeNode root, int val) {
if (root == null) {
return null;
} if (root.val == val) {
return root;
} if (val > root.val) {
return searchBST(root.right, val);
} if (val < root.val) {
return searchBST(root.left, val);
} return null;
}
}

最新文章

  1. HDU-1274 展开字符串
  2. 夺命雷公狗-----React---23--小案例之react经典案例todos(完成添加任务)
  3. CSS ::before 和 ::after 伪元素另类用法
  4. 【linux】 解决linux下vsftp 500 OOPS: cannot change directory:/home/ftp/ 办法
  5. vs如何在C++中调用Lua
  6. C# winForm程序开机启动和托盘显示 (转http://blog.csdn.net/xinyue3054/article/details/6599508)
  7. Jquery判断$(&quot;#id&quot;)获取的对象是否存在的方法
  8. PAT IO-03 整数均值
  9. hadoop浅尝 hadoop与hbase交互
  10. django 内建标签和过滤器参考
  11. Linux系统下定时上传文件至FTP服务器脚本
  12. Swift - 类型属性(类静态属性)和类方法(类静态方法)
  13. C# Guid用法
  14. 使用(Drawable)资源———ClipDrawable资源
  15. 05机器学习实战之Logistic 回归
  16. tar命令的实用详解(C参数和排除文件 --exclude)
  17. zabbix-proxy配置
  18. UIApplication概述
  19. Python rfind()方法
  20. Composite Design Pattern in Java--转

热门文章

  1. 一些常见的pro文件配置
  2. Vue + Element-ui实现后台管理系统(4)---封装一个ECharts组件的一点思路
  3. 【Hadoop离线基础总结】Hue与Impala集成
  4. 【MySQL基础总结】常用函数库
  5. Excel+Word:Jupyter
  6. Python Web自动化测试入门与实战,从入门到入行
  7. 多线程高并发编程(9) -- CopyOnWrite写入时复制
  8. C# Html转pdf文件
  9. 2020年腾讯实习生C++面试题&amp;持续更新中(3)
  10. javaScript(原型链)