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
相关推荐
长安er3 小时前
LeetCode215/347/295 堆相关理论与题目
java·数据结构·算法·leetcode·
元亓亓亓3 小时前
LeetCode热题100--62. 不同路径--中等
算法·leetcode·职场和发展
在屏幕前出油3 小时前
二、Python面向对象编程基础——理解self
开发语言·python
小白菜又菜3 小时前
Leetcode 1925. Count Square Sum Triples
算法·leetcode
阿方索3 小时前
python文件与数据格式化
开发语言·python
登山人在路上4 小时前
Nginx三种会话保持算法对比
算法·哈希算法·散列表
写代码的小球4 小时前
C++计算器(学生版)
c++·算法
AI科技星5 小时前
张祥前统一场论宇宙大统一方程的求导验证
服务器·人工智能·科技·线性代数·算法·生活
信创天地5 小时前
信创国产化数据库的厂商有哪些?分别用在哪个领域?
数据库·python·网络安全·系统架构·系统安全·运维开发
Fuly10245 小时前
大模型剪枝(Pruning)技术简介
算法·机器学习·剪枝