leetcode-1438: 绝对差不超过限制的最长连续子数组
给你一个整数数组 nums ,和一个表示限制的整数 limit,请你返回最长连续子数组的长度,该子数组中的任意两个元素之间的绝对差必须小于或者等于 limit 。
如果不存在满足条件的子数组,则返回 0 。
示例 1:
输入:nums = [8,2,4,7], limit = 4 输出:2 解释:所有子数组如下: [8] 最大绝对差 |8-8| = 0 <= 4. [8,2] 最大绝对差 |8-2| = 6 > 4. [8,2,4] 最大绝对差 |8-2| = 6 > 4. [8,2,4,7] 最大绝对差 |8-2| = 6 > 4. [2] 最大绝对差 |2-2| = 0 <= 4. [2,4] 最大绝对差 |2-4| = 2 <= 4. [2,4,7] 最大绝对差 |2-7| = 5 > 4. [4] 最大绝对差 |4-4| = 0 <= 4. [4,7] 最大绝对差 |4-7| = 3 <= 4. [7] 最大绝对差 |7-7| = 0 <= 4. 因此,满足题意的最长子数组的长度为 2 。
示例 2:
输入:nums = [10,1,2,4,7,2], limit = 5 输出:4 解释:满足题意的最长子数组是 [2,4,7,2],其最大绝对差 |2-7| = 5 <= 5 。
示例 3:
输入:nums = [4,2,2,2,4,4,2,2], limit = 0 输出:3
class Solution {
public:int longestSubarray(vector<int>& nums, int limit) {if (limit < 0) return 0;int l = 0, ans = 1;deque<int> q_min, q_max;q_min.push_back(0);q_max.push_back(0);for (int r = 1; r < nums.size(); r++) {while (!q_min.empty() && nums[q_min.back()] > nums[r]) q_min.pop_back();while (!q_max.empty() && nums[q_max.back()] < nums[r]) q_max.pop_back();q_min.push_back(r);q_max.push_back(r);if (nums[q_max.front()] - nums[q_min.front()] > limit){if (q_min.front() == l) q_min.pop_front();if (q_max.front() == l) q_max.pop_front();l += 1;}ans = max(r - l + 1, ans);} return ans;}
};
相关文章:
leetcode-1438: 绝对差不超过限制的最长连续子数组
给你一个整数数组 nums ,和一个表示限制的整数 limit,请你返回最长连续子数组的长度,该子数组中的任意两个元素之间的绝对差必须小于或者等于 limit 。 如果不存在满足条件的子数组,则返回 0 。 示例 1: 输入&#x…...
【数据结构初阶】九、排序的讲解和实现(直接插入 \ 希尔 \ 直接选择 \ 堆 \ 冒泡 -- C语言)
相关代码gitee自取: C语言学习日记: 加油努力 (gitee.com) 接上期: 【数据结构初阶】八、非线性表里的二叉树(二叉树的实现 -- C语言链式结构)-CSDN博客 排序 排序的概念 所谓排序,就是使一串记录,按照…...
uview组件使用笔记
图标样式 修改图标的样式 通过color参数修改图标的颜色通过size参数修改图标的大小,单位为rpx 效果图 <u-icon name"photo" color"#2979ff" size"28"></u-icon>图片图标 1.3.0 这里说的图片图标,指的是小…...
Linux1024一篇通俗易懂的liunx命令操作总结(第十课)
Linux1024一篇通俗易懂的liunx命令操作总结(第十课) 一 liunx 介绍 Linux是一种免费开源的操作系统,它的设计基于Unix。它最早是由芬兰的一位大学生Linus Torvalds在1991年开始编写的,取名为Linux。Linux具有高度的灵活性和可定制性,可以在…...
nuxt使用i18n进行中英文切换
中文效果图: 英文效果图: 版本: 安装: npm install --save nuxtjs/i18n 新建en.js与zh.js两个文件进行切换显示 en.js内容 import globals from ./../js/global_valexport default {/******* 公共内容开始* *****/seeMore: &quo…...
机器人制作开源方案 | 行星探测车实现WiFi视频遥控功能
1. 功能描述 本文示例所实现的功能为:用手机APP,通过WiFi通信遥控R261样机行星探测车移动,以及打开、关闭行星探测车太阳翼。 2. 电子硬件 在这个示例中,我们采用了以下硬件,请大家参考: 主控板 Basra主控…...
Angular main 中的enableProdMode
enableProdMode一次深度解析 在Angular的开发过程中,我们经常会遇到一个名为enableProdMode的设置。这个设置位于Angular的主模块(main module)中,它的主要作用是启用生产模式。那么,什么是生产模式?为什么…...
驱动day2:LED灯实现三盏灯的亮灭
head.h #ifndef __HEAD_H__ #define __HEAD_H__ #define PHY_PE_MODER 0x50006000 #define PHY_PF_MODER 0x50007000 #define PHY_PE_ODR 0x50006014 #define PHY_PF_ODR 0x50007014 #define PHY_RCC 0x50000A28#endif 应用程序 #include <stdio.h> #include <sys/…...
Android 编译错误:module xxx1 missing dependencies:xxx2
编译错误log module xxx1 missing dependencies:xxx2 分析方向 1.缺少依赖库 添加依赖库 shared_libs: ["libhidlbase","libhidltransport","libhwbinder","liblog","libutils","libcutils",],2.缺…...
使用EasyExcel实现Excel导入导出
介绍 EasyExcel是一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。 他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。 快速:快速的读取excel中的数据。 简洁:映射excel和实体类,让…...
京东手机销售数据:2023年9月京东手机行业TOP10品牌排行榜
鲸参谋监测的京东平台9月份手机市场销售数据已出炉! 9月份,手机市场销售整体呈现下滑。鲸参谋数据显示,今年9月,京东平台手机销量为300万,环比下降约20%,同比下降约18%;销售额为92亿,…...
常量字符串
一、常量字符串是什么? 常量字符串是一个常量,它的值是首字符的地址 比如 "abcdefg" 或 "123456789" 就是常量字符串 二、常量字符串与普通字符串的区别 1.常量字符串不可更改,而普通字符串可以更改 利用memcpy内存…...
【活体检测】“深度学习驱动的人脸反欺诈检测系统:性能提升与多模型支持“
微调小视科技开源静默活体检测模型加载方式,性能提升8倍 I. 引言 在当今数字化时代,人脸反欺诈检测在各种应用中发挥着重要作用,从人脸识别到金融欺诈检测。为了满足不断增长的需求,深度学习技术已成为关键工具,但性…...
Howler.js HTML5声音引擎
介绍 Howler.js是一个不错的HTML5声音引擎。功能强大,性能不错,用起来也很方便。 1. 官网 https://howlerjs.com/ GitHub https://github.com/goldfire/howler.js 2. 兼容性 Howler默认使用Web Audio,但在IE上可以自动转为HTML 5 Audio。这…...
centos 7.9每天定期发送最新备份文件到另外一台服务器
1.需求 在本地化部署的过程中,为了使系统相对来说高可用,一般情况下,我们都会做一个负载,但是客户又会考虑成本,所以只有可怜巴巴的两台服务器,要全部服务都做负载,这个就实现不了。所以只能把…...
一文全面了解:一个神奇的 react-antd-admin 动态菜单
在React v18中使用React Router v6和Ant Design (antd) v5来动态生成菜单和路由,同时使用MockJS来模拟接口请求菜单数据,可以按照以下步骤进行: 创建一个React应用: 使用Create React App或您喜欢的其他方式创建一个React应用。 安装必要的依赖: 在项目目录中运行以下命令…...
二叉树,堆排序及TopK问题
要讲二叉树的概念,就要先讲树的概念。 树是什么呢? 树其实是一种储存数据的结构,因为他的结构倒过来和生活中的树很相似所以才被称之为树。 这是一颗多叉树,从最顶端的节点可以找到下边的几个节点,下边的节点又可以找…...
iphone xr密码错误太多次 连接itunes
itunes下载的固件在电脑在电脑的“C:\Users\用户名\AppData\Roaming\Apple Computer\iTunes\iPhone Software Updates”文件夹之中。 如果你忘记了 iPhone 密码 - 官方 Apple 支持 (中国) 下载和使用 Windows 10 版 iTunes - 官方 Apple 支持 (中国) 查找手机 iClo…...
设置RabbitMQ超时时间
RabbitMQ默认的超时时间是30分钟,在消息消费超过30分钟后,rabbitMQ会发生错误,导致整个channel被销毁,无法继续消费 在RabbitMQ安装的终端执行 rabbitmqctl eval application:set_env(rabbit,consumer_timeout,180000000). 命令…...
QT计时器
widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTimerEvent> //计时器类 #include <QTime> //时间类 QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widg…...
SSHFS-Win终极指南:在Windows上快速挂载远程Linux文件系统的完整教程
SSHFS-Win终极指南:在Windows上快速挂载远程Linux文件系统的完整教程 【免费下载链接】sshfs-win SSHFS For Windows 项目地址: https://gitcode.com/gh_mirrors/ss/sshfs-win SSHFS-Win是一款革命性的开源工具,让Windows用户能够通过SSH协议直接…...
5分钟掌握Blender 3MF插件:释放3D打印的完整潜力
5分钟掌握Blender 3MF插件:释放3D打印的完整潜力 【免费下载链接】Blender3mfFormat Blender add-on to import/export 3MF files 项目地址: https://gitcode.com/gh_mirrors/bl/Blender3mfFormat 想要在Blender中无缝处理3D打印文件吗?Blender3m…...
Air724UG模块(4G全网通GPRS开发)-下载AT或者DTU固件和入门使用
Air724UG(4G全网通GPRS)开发-硬件使用说明模块简介1.实物图2.尺寸引脚图3.模块供电①:micro,usb接口供电②:VCC供电(5V~18V)③:VBAT供电(3.6V~4.3V)4.AT指令通信使用MCU和模块进行AT指令通信时,需要用到以下引脚;RX1:模组串口AT指令接收数据引脚;TX1:模组串口AT指令发送数据引脚…...
Windows风扇控制终极实战:FanControl深度配置与高级调优指南
Windows风扇控制终极实战:FanControl深度配置与高级调优指南 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trend…...
避开STC15单片机PCA/PWM的那些坑:时钟源选择与占空比精度详解
STC15单片机PCA/PWM实战避坑指南:从时钟源配置到占空比优化的完整解决方案 第一次接触STC15W408AS的PCA/PWM功能时,我对着官方手册配置了半天,示波器上却始终看不到预期波形。直到深夜才发现问题出在时钟源选择上——这个看似简单的配置项&am…...
Semtech AirLink 5G RedCap路由器工业应用解析
1. Semtech AirLink RX400/EX400 5G RedCap路由器深度解析工业物联网领域最近迎来了一对重量级选手——Semtech最新发布的AirLink RX400和EX400 5G RedCap路由器。作为长期跟踪工业通信设备的技术从业者,我第一时间研究了这两款产品的技术细节和应用场景。不同于市面…...
别再傻傻分不清了!一张图看懂PON网络里的OLT、ONU和光猫到底啥关系
一图读懂PON网络:OLT、ONU和光猫的"水表家族"关系 每次看到宽带师傅在楼道里摆弄那些带着光纤的小盒子,你是否好奇过它们究竟如何把千兆网络送进你家?当听到"OLT"、"ONU"、"分光器"这些专业术语时&a…...
Hitboxer:解决游戏按键冲突的专业级SOCD工具,让你的操作更精准
Hitboxer:解决游戏按键冲突的专业级SOCD工具,让你的操作更精准 【免费下载链接】socd Key remapper for epic gamers 项目地址: https://gitcode.com/gh_mirrors/so/socd 你是否在玩《空洞骑士》这样的平台跳跃游戏时,经常因为同时按下…...
RAG系统构建全流程:从数据分块、向量化到检索优化与评估
1. 从零到一:理解RAG的核心价值与演进脉络如果你最近在AI圈子里待过,肯定对RAG这个词不陌生。它全称是Retrieval-Augmented Generation,翻译过来叫检索增强生成。听起来挺学术,但说白了,它解决的是大语言模型ÿ…...
Yew行为驱动开发:BDD和Cucumber完整指南
Yew行为驱动开发:BDD和Cucumber完整指南 【免费下载链接】yew Rust / Wasm framework for creating reliable and efficient web applications 项目地址: https://gitcode.com/gh_mirrors/ye/yew Yew是一个基于Rust和WebAssembly的框架,用于创建可…...
