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
相关推荐
Oueii2 分钟前
分布式系统监控工具
开发语言·c++·算法
小陈工9 分钟前
2026年3月24日技术资讯洞察:边缘AI商业化,Java26正式发布与开源大模型成本革命
java·运维·开发语言·人工智能·python·容器·开源
qq_4160187211 分钟前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
m0_6625779716 分钟前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
xushichao198929 分钟前
C++中的中介者模式
开发语言·c++·算法
MORE_7731 分钟前
leecode100-买卖股票的最佳时期-贪心算法
python·算法·贪心算法
AI科技星34 分钟前
基于wr/c + h/c = 1的螺旋线矢量特性及应用分析
c语言·开发语言·人工智能·opencv·算法·计算机视觉·r语言
颜酱37 分钟前
回溯算法专项突破练习(1)
javascript·后端·算法
进击的荆棘1 小时前
优选算法——分治
数据结构·算法·leetcode·分治
暮冬-  Gentle°1 小时前
用Python制作一个文字冒险游戏
jvm·数据库·python