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

news2024/11/22 19:53:20

LeetCode20. 有效的括号

    • 题目链接
    • 代码

题目链接

https://leetcode.cn/problems/search-in-a-binary-search-tree/
在这里插入图片描述

代码

递归法

# 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

迭代

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/948895.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

进度猫:如何做好项目进度管理?有几点建议

项目目进度管理是在项目实施过程中&#xff0c;对各阶段的进展和项目最终完成的期限进行的管理。目的是保证项目能在满足其时间的约束条件的前提下实现项目的总体目标。 因此为了保证项目能够按时完成&#xff0c;需要制订详尽的可操作性的项目进度管理计划&#xff0c;才可以…

MySQL数据库备份及恢复

数据备份的重要性 1、备份的主要目的是灾难恢复 2、在生产环境中&#xff0c;数据的安全性至关重要 3、任何数据的丢失都可能产生严重的后果 4、造成数据丢失的原因 备份类型(重点) 1、物理备份 数据库备份可以分为物理备份和逻辑备份。物理备份是对数据库操作系统的物…

【App端】uni-app使用百度地图api和echarts省市地图下钻

目录 前言方案一&#xff1a;echarts百度地图获取百度地图AK安装echarts和引入百度地图api完整使用代码 方案二&#xff1a;echarts地图和柱状图变形动画实现思路完整使用代码 方案三&#xff1a;中国地图和各省市地图下钻实现思路完整使用代码 前言 近期的app项目中想加一个功…

QGIS-计算几何内部点(一定在几何内)

在提取几何图像的中心点相关的X Y时&#xff0c;我们往往希望提取的点在几何内部&#xff0c;因为对于不规则图形而言&#xff0c;特别是凹几何&#xff0c;提取的点可能在图形外&#xff0c;QGIS中提供了相关的函数用于提取点中心点&#xff1a; 打开图形的属性列表&#xff…

Springboot2.0 上传图片 jar包导出启动(第二章)

目录 一&#xff0c;目录文件结构讲解二&#xff0c;文件上传实战三&#xff0c;jar包方式运行web项目的文件上传和访问处理&#xff08;核心知识&#xff09;最后 一&#xff0c;目录文件结构讲解 简介&#xff1a;讲解SpringBoot目录文件结构和官方推荐的目录规范 1、目录讲解…

行业毒瘤还是长久需求?无代码编程会是趋势吗?

无代码和低代码都是这几年才诞生、但受到不少关注的新名词。无代码和低代码的发展前景如何&#xff1f;是一时兴起还是长久需求&#xff0c;是不是行业毒瘤&#xff0c;种种讨论络绎不绝。 无代码开发平台&#xff08;NCDP&#xff0c;No Code Development Platform&#xff09…

Java从入门到精通(五)· 内部类,枚举,泛型

Java从入门到精通&#xff08;五&#xff09; 内部类&#xff0c;枚举&#xff0c;泛型 一 内部类 1.概述 简单来说&#xff0c;如果一个类定义在另一个类的内部&#xff0c;这个类就是内部类。 使用场景&#xff1a;当一个类的内部&#xff0c;包含了一个完整的事务&#…

常见的软件测试模型

目录 1、瀑布模型 2、V模型 3、W模型 4、H模型 5、X模型 1、瀑布模型 瀑布模型是一种线性的、顺序的软件开发模型 上一阶段的输出结果作为下一阶段的输入 优点&#xff1a; &#xff08;1&#xff09;为项目提供了按阶段划分的检查点。 &#xff08;2&#xff09;当前一阶段…

【校招VIP】产品面试之面试官的真实意图

考点介绍&#xff1a; 大厂面试时&#xff0c;面试官提出的问题除了了解经历和想法外&#xff0c;最看重的是思维逻辑能力、团队协作能力和协调能力。 『产品面试之面试官的真实意图』相关题目及解析内容可点击文章末尾链接查看&#xff01; 一、考点题目 1. 你遇到的最大的…

QT 相关设置

目录 1.安装QT2.安装好之后需要做一些设置2.1 基本的字体及主题设置2.2 格式化美化代码插件设置 1.安装QT 具体教程不写了 2.安装好之后需要做一些设置 2.1 基本的字体及主题设置 进入选项 选择喜欢的主题 字号字体设置 2.2 格式化美化代码插件设置 先下载一个格式化插…

五、多表查询-4.6练习

一、准备数据 【效果展示】 emp1表&#xff08;员工表&#xff09;&#xff1a; dept1表&#xff08;部门表&#xff09;&#xff1a; salgrade表&#xff08;薪资等级表&#xff09;&#xff1a; 二、案例 1、查询员工的姓名、年龄、职位、部门信息&#xff08;隐式内连接&am…

JUC详解

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是爱发博客的嗯哼&#xff0c;爱好Java的小菜鸟 &#x1f525;如果感觉博主的文章还不错的话&#xff0c;请&#x1f44d;三连支持&#x1f44d;一下博主哦 &#x1f4dd;社区论坛&#xff1a;希望大家能加入社区共同进步…

leetcode 823. 带因子的二叉树(dp+双指针+Long类型)

leetcode 823. 带因子的二叉树(dp双指针Long类型) 题目表述 给出一个含有不重复整数元素的数组 arr &#xff0c;每个整数 arr[i] 均大于 1。 用这些整数来构建二叉树&#xff0c;每个整数可以使用任意次数。其中&#xff1a;每个非叶结点的值应等于它的两个子结点的值的乘积…

个人博客论坛系统测试报告

目录 一、项目介绍 二、测试计划 1、功能测试 &#xff08;1&#xff09;测试环境&#xff1a; &#xff08;2&#xff09;测试用例编写 &#xff08;3&#xff09;部分功能测试 2、自动化测试 &#x1f351;注册页面测试 验证注册成功的情况 验证注册失败的情况 &a…

WebDAV之π-Disk派盘 + 思源笔记

思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。 融合块、大纲和双向链接,重构你的思维。 π-Disk派盘 – 知识管理专家 派盘是一款面向个人和企业的本地云存储解决方案,它可以帮助用户打造“数字第二大脑”,并支持KMS知识管理系…

Qt自定义标题栏

一、创建项目 最终项目文件结构如下 “iconfont.tff”的使用方式见如下博客&#xff0c;用于更改图标颜色Qt更改图标颜色_怎么追摩羯座的博客-CSDN博客 二、MyTitleBar.pro #------------------------------------------------- # # Project created by QtCreator 2023-08-2…

antd upload组件beforeUpload返回promise之后,获取的文件不是file类型导致上传失败

之前的beforeUpload直接返回一个false值 &#xff0c;文件是可以正常与服务端进行传输的 beforeUpload: (file) > {return false},但是这样并不能阻止文件上传&#xff0c;看了官方文档后&#xff0c;改用返回promise对象上传 beforeUpload: (file) > {console.log(-befo…

Primeng table filter 重置条件

我用一个overlayPanel装了p-table&#xff0c;里面有个count的filter&#xff0c;但是我设置值之后&#xff0c;让overlayPanel消失&#xff0c;再出现的时候&#xff0c;明明已经重新设置了表里面的数据和filter的变量值&#xff0c;但是上一次的条件仍然在,旁边的文字filter依…

openGauss本地Centos7.6单机安装和简单应用

openGauss本地Centos7.6单机安装和简单应用 openGauss基础环境配置openGauss安装openGauss使用测试openGauss常用命令 openGauss基础环境配置 在VMware Workstation中安装一台 centos7.6 内存&#xff1a;8GB&#xff0c;亲测4GB安装不够 磁盘&#xff1a;测试50GB-100GB够用 …

谈了千百遍的数据一致性

今天来说一个老生常谈的问题&#xff0c;来看一个实际案例&#xff1a; 现有业务中往往都会通过缓存来提高查询效率&#xff0c;降低数据库的压力&#xff0c;尤其是在分布式高并发场景下&#xff0c;大量的请求直接访问Mysql很容易造成性能问题。 有一天老板找到了你… 老板…