LeetCode(力扣)700. 二叉搜索树中的搜索Python

LeetCode20. 有效的括号

题目链接

https://leetcode.cn/problems/search-in-a-binary-search-tree/

代码

递归法

python 复制代码
# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def searchBST(self, root: Optional[TreeNode], val: int) -> Optional[TreeNode]:
        if not root or root.val == val:
            return root
        if root.val < val:
            result = self.searchBST(root.right, val)
        if root.val > val:
            result = self.searchBST(root.left, val)
        return result

迭代

python 复制代码
class Solution:
    def searchBST(self, root: Optional[TreeNode], val: int) -> Optional[TreeNode]:
        while root:
            if root.val < val: root = root.right
            elif root.val > val: root = root.left
            else: return root
相关推荐
Ven%5 分钟前
从单轮问答到连贯对话:RAG多轮对话技术详解
人工智能·python·深度学习·神经网络·算法
山楂树の6 分钟前
爬楼梯(动态规划)
算法·动态规划
谈笑也风生10 分钟前
经典算法题型之复数乘法(二)
开发语言·python·算法
智算菩萨14 分钟前
强化学习从单代理到多代理系统的理论与算法架构综述
人工智能·算法·强化学习
lhn14 分钟前
大模型强化学习总结
算法
Gigavision29 分钟前
MMPD数据集 最新Mamba算法 源码+数据集 下载方式
算法
先知后行。35 分钟前
python的类
开发语言·python
Xの哲學38 分钟前
Linux UPnP技术深度解析: 从设计哲学到实现细节
linux·服务器·网络·算法·边缘计算
歌_顿38 分钟前
GPT 系列学习总结(1-3)
算法
业精于勤的牙41 分钟前
最长特殊序列(三)
算法