一、思路
给定二叉搜索树(BST)的根节点和一个值。 你需要在BST中找到节点值等于给定值的节点。 返回以该节点为根的子树。 如果节点不存在,则返回 NULL。
二叉搜索树是二叉树的一种,是应用非常广泛的一种二叉树,英文简称为 BST ,又被称为:二叉查找树、二叉排序树
1.任意一个节点的值都
大于
其
左
子树所有节点的值
2.任意一个节点的值都
小于
其
右
子树所有节点的值
3.它的左右子树也是一棵二叉搜索树
二、代码
由二叉排序树的特性,可得代码。
/**
* 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;
}
while(root != null){
if(root.val < val){
root = root.right;
}else if(root.val > val){
root = root.left;
}else{
return root;
}
}
return null;
}
}