当前位置: 首页 > news >正文

(力扣记录)235. 二叉搜索树的最近公共祖先

数据结构:树🌲

时间复杂度:O(n)

空间复杂度:O(1)

代码实现:

class Solution:def lowestCommonAncestor(self, root: 'TreeNode', p: 'TreeNode', q: 'TreeNode') -> 'TreeNode':while True:if p.val <= root.val <= q.val or q.val <= root.val <= p.val:return rootelif p.val > root.val and q.val > root.val:root = root.rightelse:root = root.left

相关文章:

  • 堆排及时间复杂度分析
  • C# CAD交互界面-自定义面板集-查找定位(六)
  • MATLAB实现朴素贝叶斯分类
  • 第1章 计算机网络体系结构-1.2计算机网络体系结构与参考模型
  • 【Python】通过conda安装Python的IDE
  • Harris关键点检测以及SAC-IA粗配准
  • 基于Python实现Midjourney集成到(个人/公司)平台中
  • 【前端工程化面试题】简单说一下 vite 的原理
  • 【C++】const、static关键字和构造函数初始化
  • 北邮复试刷题103. 二叉树的锯齿形层序遍历
  • 目标检测 | 卷积神经网络(CNN)详细介绍及其原理详解
  • 创新设计与技术突破:嵌入式系统在人工智能和机器学习领域的应用前景
  • 常见的JavaScript书写基本规范
  • 《Linux 简易速速上手小册》第8章: 安全性与加固(2024 最新版)
  • B3657 [语言月赛202209] 公园门票
  • (三)从jvm层面了解线程的启动和停止
  • 77. Combinations
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • HashMap ConcurrentHashMap
  • If…else
  • iOS高仿微信项目、阴影圆角渐变色效果、卡片动画、波浪动画、路由框架等源码...
  • js如何打印object对象
  • Object.assign方法不能实现深复制
  • Web标准制定过程
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 三栏布局总结
  • 深度解析利用ES6进行Promise封装总结
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 使用putty远程连接linux
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 如何在 Intellij IDEA 更高效地将应用部署到容器服务 Kubernetes ...
  • ​2021半年盘点,不想你错过的重磅新书
  • ​第20课 在Android Native开发中加入新的C++类
  • # C++之functional库用法整理
  • #HarmonyOS:基础语法
  • #includecmath
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上
  • (Mirage系列之二)VMware Horizon Mirage的经典用户用例及真实案例分析
  • (考研湖科大教书匠计算机网络)第一章概述-第五节1:计算机网络体系结构之分层思想和举例
  • (力扣)循环队列的实现与详解(C语言)
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (十七)devops持续集成开发——使用jenkins流水线pipeline方式发布一个微服务项目
  • (译) 函数式 JS #1:简介
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • .bashrc在哪里,alias妙用
  • .L0CK3D来袭:如何保护您的数据免受致命攻击
  • .net core使用ef 6
  • .NET 中让 Task 支持带超时的异步等待
  • ??如何把JavaScript脚本中的参数传到java代码段中
  • @EnableWebMvc介绍和使用详细demo
  • @我的前任是个极品 微博分析
  • [2013][note]通过石墨烯调谐用于开关、传感的动态可重构Fano超——
  • [android] 看博客学习hashCode()和equals()