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
相关推荐
大佬,救命!!!2 小时前
selenium环境搭建详细过程
笔记·python·selenium·测试工具·pycharm·自动化·环境搭建
糕冷小美n2 小时前
jeecgbootvue2重新整理数组数据或者添加合并数组并遍历背景图片或者背景颜色
数据结构·算法
CV万花筒2 小时前
点云欧式聚类,条件欧式聚类算法原理及推导
算法·数据挖掘·聚类
ZZZ_O^O3 小时前
【贪心算法-第三弹——Leetcode-179.最大数】
c++·学习·算法·leetcode·贪心算法
Matlab程序猿小助手3 小时前
【MATLAB源码-第228期】基于matlab的鼠群优化算法(RSO)无人机三维路径规划,输出做短路径图和适应度曲线.
开发语言·算法·matlab·机器人·无人机
z千鑫3 小时前
【C/C++】深入解析 Stack 与 Queue 数据结构(详解):实现原理、应用场景与性能优化
c语言·开发语言·数据结构·c++·深度学习·算法·排序算法
Y编程小白4 小时前
Leecode经典题2--移除元素
数据结构·算法·leetcode
Wils0nEdwards4 小时前
Leetcode 颠倒二进制位
算法·leetcode·职场和发展
醇醛酸醚酮酯4 小时前
两数之和--leetcode100题
数据结构·算法·leetcode
xiaoshiguang34 小时前
LeetCode:19.删除链表倒数第N个节点
算法·leetcode·链表