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
相关推荐
倾心琴心几秒前
【agent辅助pcb routing coding学习】实践3 kicad routing tools 从PCB文件获取了哪些信息
算法·agent·pcb·eda·routing
2401_898075123 分钟前
代码生成器优化策略
开发语言·c++·算法
郝学胜-神的一滴6 分钟前
人工智能发展漫谈:从专家系统到AIGC,再探深度学习核心与Pytorch入门
人工智能·pytorch·python·深度学习·算法·cnn·aigc
老杨_QQ12220901710 分钟前
对量化交易未来的思考
人工智能·python·金融
nananaij10 分钟前
【LeetCode-03 判断根结点是否等于子结点之和 python解法】
python·算法·leetcode
超级大只老咪12 分钟前
差分算法(java)
算法
逆境不可逃14 分钟前
【从零入门23种设计模式21】行为型之空对象模式
java·开发语言·数据库·算法·设计模式·职场和发展
老师好,我是刘同学14 分钟前
归并排序原理与Python实现详解
python·排序算法
超级大只老咪17 分钟前
输入(java)
算法
jing-ya19 分钟前
day51 图论part3
数据结构·算法·深度优先·图论