首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >LeetCode 700. 二叉搜索树中的搜索

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

作者头像
Michael阿明
发布2022-11-26 10:26:39
发布2022-11-26 10:26:39
4740
举报

1. 题目

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

2. 解题

代码语言:javascript
复制
class Solution {//递归写法
	TreeNode *ans = NULL;
public:
    TreeNode* searchBST(TreeNode* root, int val) {
        if(root == NULL)
        	return root;
        if(ans)
        	return ans;
        if(root->val == val)
    	{
    		ans = root;
    		return ans;
    	}
        else if(root->val < val)
        	searchBST(root->right, val);
        else
        	searchBST(root->left, val);
        return ans;
    }
};
代码语言:javascript
复制
class Solution {//循环写法
public:
    TreeNode* searchBST(TreeNode* root, int val) {
        while(root)
        {
        	if(root->val == val)
        		return root;
        	else if(root->val < val)
        		root = root->right;
        	else
        		root = root->left;
        }
        return NULL;
    }
};
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-09-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 题目
  • 2. 解题
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档