力扣2476.二叉搜索树最近节点查询

力扣2476.二叉搜索树最近节点查询

  • 二叉搜索树 + 中序遍历 = 严格递增数组

    • 在数组上做二分 找到第一个>=q的元素的下标j
    • 若j < n 则a[j]为maxx
    • 若j-1>0 && a[j] != p 则a[j-1]为minx
  •   class Solution {vector<int> a;void dfs(TreeNode* node){if(node == nullptr) return;dfs(node->left);a.push_back(node->val);dfs(node->right);}public:vector<vector<int>> closestNodes(TreeNode* root, vector<int>& queries) {dfs(root);int n = a.size();vector<vector<int>> res;for(int q:queries){//找第一个>=q元素的下标int j = ranges::lower_bound(a,q) - a.begin();int maxx = j < n ? a[j] : -1;//若j==n 说明当前q为最大值 j-1一定是<q的下标if(j == n || a[j] != q) j --;int minx = j >= 0 ? a[j] : -1;res.push_back({minx,maxx});}return res;}};
    

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

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

相关文章

glm4、qwen、MiniCPM-Llama3-V代码层面差异性分析

让我们详细解读这个glm4下的 RotaryEmbedding 类&#xff0c;逐行解释代码的工作原理。 类的定义和初始化 class RotaryEmbedding(nn.Module):def __init__(self, dim, rope_ratio1, original_implFalse, deviceNone, dtypeNone):super().__init__()inv_freq 1.0 / (10000 *…

【Altium】Sheet Symbol器件页面符和对应原理图端口同步

【更多软件使用问题请点击亿道电子官方网站】 1、文档目标&#xff1a; 更给原理图端口后&#xff0c;如何同步到对应的sheet symbol 2、应用场景&#xff1a; 使用层次结构原理图设计的情况下&#xff0c;修改了某张原理图上的端口之后&#xff0c;其对应的sheet symbol上的…

APK打包 |应用图标 | 应用名称设置

在 Android 项目中&#xff0c;设置应用的图标和名称是必要的步骤。这些设置通常在 AndroidManifest.xml 和资源文件中进行配置。以下是如何设置应用的图标和名称的详细步骤。 1. 设置应用图标 准备图标资源 首先&#xff0c;准备好你的应用图标。图标应该有多个尺寸&#x…

Java网络爬虫入门

文章目录 1、导入依赖2、CrawlerFirst 1、导入依赖 <dependencies><!-- HttpClient --><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.3</version></…

面试题之CSS

1. 引入样式的方式 外部样式 link import 区别 内部样式 /* 写在头部标签 */ <style></style>行内样式 2. 三行代码画三角形 .triangle{width:0px;border:100px solid;border-color:transparent transparent transparent red; }3.属性的继承 可继承的属性 …

win10重装系统如何操作,附上详细系统重装图文教程(2024年新)

win10重装系统如何操作呢&#xff1f;电脑使用时间长了&#xff0c;会出现各种各样的问题&#xff0c;如重要的系统文件被删除导致电脑无法正常运行&#xff0c;电脑运行内存空间不足&#xff0c;电脑卡顿等。Win10重装系统很简单&#xff0c;这里分享超详细的重装系统方法&…

【设计模式】面向对象的优点

面向过程 我们知道面向过程是以过程&#xff08;函数、方法、操作&#xff09;作为组织代码的基本单元&#xff0c;数据与方法相分离是其主要的特点。而面向对象是以类、对象作为组织代码的基本单元&#xff0c;数据与方法往往相关联。 面向过程编程语言的特点是不支持类和对…

【跟我学RISC-V】(三)openEuler特别篇

写在前面 这篇文章是跟我学RISC-V指令集的第三期&#xff0c;距离我上一次发文已经过去一个多月了&#xff0c;在这个月里我加入了oerv的实习项目组&#xff0c;并且还要准备期末考试&#xff0c;比较忙。 在这篇文章里我会隆重、详细地介绍一个对RISC-V支持非常友好的Linux发…

判断当前设备为移动端自适应 平板和pc端为375移动端样式

在libs的setRem.js中&#xff1a; let html document.querySelector("html"); function setRem() {let ui_w 375;let cl_w document.documentElement.clientWidth || document.body.clientWidth;cl_w > 750 ? cl_w 375 : "";html.style.fontSize …

Less基础

1. Less入门 1.1 有了 CSS&#xff0c;为什么还需要 Less CSS基本上是设计师的工具&#xff0c;不是程序员的工具。在程序员的眼里&#xff0c;CSS是很头痛的事情&#xff0c;它并不像其它程序语言&#xff0c;比如说PHP、Javascript等等&#xff0c;有自己的变量、常量、条件…

高性能网络SIG月度动态:自研 IPPROTO_SMC 贡献 Linux 社区,virtio 增加多项优化

高性能网络 SIG&#xff08;Special Interest Group&#xff09; &#xff1a;在这个万物互联的时代&#xff0c;云上的网络通信效率对各种服务至关重要&#xff0c;高性能网络兴趣组致力于利用 XDP、RDMA、VIRTIO 等新高效通信技术&#xff0c;结合软硬件一体化的思想&#xf…

【每天学会一个渗透测试工具】Nessus安装及使用指南

&#x1f31d;博客主页&#xff1a;泥菩萨 &#x1f496;专栏&#xff1a;Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 其他扫描工具&#xff1a; AWVS和Xray&#xff1a;应用漏洞扫描工具 fscan&#xff1a;虽然能扫主机&#xff0c;但比较老了…

01- ES6语法

1.ES6相关概念 1.1 什么是ES6 1.1.1 简介 ES6&#xff0c; 全称 ECMAScript 6.0 &#xff0c;是 JavaScript 的下一个版本标准&#xff0c;2015.06 发版。 ES6 主要是为了解决 ES5 的先天不足&#xff0c;比如 JavaScript 里并没有类的概念&#xff0c;但是目前浏览器的 Ja…

Linux、Windows安全加固

为了减少系统被黑客入侵&#xff0c;对操作系统的安全加固是网络安全和主机安全必不可少的一部分。 一、Linux安全加固 1.不使用默认的ssh端口&#xff0c;修改默认ssh22端口号 sudo vim /etc/ssh/ssh_config 去掉#注释&#xff0c;修改端口号并保存 2.关闭不必要的系统服务…

日常学习记录

1、力扣sql 15题 2、八股 回顾java基础 3、sql网课还差一节

pip install 安装 torch cuda 11.8 cu118

默认安装&#xff0c;速度比较慢 pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118 百度了一下&#xff0c;有推荐这么改的&#xff0c;速度还是慢&#xff0c;因为还是转到官网 pytorch.org pip install torch torchvisi…

数据库设计规范总结

数据库设计规范总结 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 数据库设计规范是指在设计数据库时应该遵循的一系列规则和标准&#xff0c;旨在提高数据库…

【ajax基础03】常用ajax请求方法和数据提交以及axios错误处理

一&#xff1a;请求方法 什么是请求方法&#xff1a; 浏览器对服务器资源&#xff0c;要执行的操作 常见请求方法如下 二&#xff1a;axios中应用 语法格式&#xff1a; method:为请求方法&#xff0c;默认情况下为get&#xff08;获取数据&#xff09; data&#xff1a;…

技术革新| 卓翼飞思受邀出席2024士兵智能装备与技术学术大会

6月14日&#xff0c;由中国兵器装备集团智元研究院/智元国家重点实验室、中国兵工学会主办的 “2024士兵智能装备与技术学术大会” 在杭州隆重召开。卓翼智能应邀出席本次大会&#xff0c;并发表了题为《新概念飞行器及多智能体集群仿真系统研究》的演讲报告。 本次大会以“智能…

Centos8.5安装mysql8.0

1.检查是否有安装mysql数据库&#xff08;如果有mysql或者mariadb数据库&#xff0c;则卸载&#xff09; [rootmyhost ~]# rpm -qa |grep mysql [rootmyhost ~]# rpm -qa | grep mariadb [rootmyhost ~]# ll /etc/my.cnf ls: 无法访问/etc/my.cnf: No such file or directory…