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

定个小目标之刷LeetCode热题(45)

32. 最长有效括号

给你一个只包含 '(' 和 ')' 的字符串,找出最长有效(格式正确且连续)括号

子串的长度。

示例 1:

输入:s = "(()"
输出:2
解释:最长有效括号子串是 "()"

有事会暂停更新,总之慢慢积累,今天看一下这道题,有动态规划、栈等解法,本题采用计数器法,思路就是分别定义两个计数器left和rigth,首先从左向右遍历,当遇到左括号时left++,遇到右括号时right++,当left == right时记录此时有效子串的长度maxLength,当right > left时,重置left和right为0,遍历结束后不一定能得到最长有效括号的长度,因为如果输入的是“((((((()”时,此时如果从左向右遍历maxLength依旧为0,我们需要从右向左遍历,需要改变的条件是当left > right时,重置left和right为0,两次不同方向遍历结束后就可以得到maxLength了,时间复杂度为O(n),空间复杂度为O(1),代码如下

class Solution {public int longestValidParentheses(String s) {int left = 0, right = 0, maxLength = 0;// 从左向右遍历for (int i = 0; i < s.length(); i++) {if (s.charAt(i) == '(') {left++;} else {right++;}if (left == right) {maxLength = Math.max(maxLength, right * 2);} else if (right > left) {left = right = 0;}}left = right = 0;// 从右向左遍历for (int i = s.length() - 1; i >= 0; i--) {if (s.charAt(i) == ')') {right++;} else {left++;}if (left == right) {maxLength = Math.max(maxLength, left * 2);} else if (left > right) {left = right = 0;}}return maxLength;}
}

题目链接:题单 - 力扣(LeetCode)全球极客挚爱的技术成长平台

相关文章:

定个小目标之刷LeetCode热题(45)

32. 最长有效括号 给你一个只包含 ( 和 ) 的字符串&#xff0c;找出最长有效&#xff08;格式正确且连续&#xff09;括号 子串的长度。 示例 1&#xff1a; 输入&#xff1a;s "(()" 输出&#xff1a;2 解释&#xff1a;最长有效括号子串是 "()"有事…...

golang 实现负载均衡器-负载均衡原理介绍

go 实现负载均衡器 文章目录 go 实现负载均衡器代码实现介绍负载均衡的核心组件与工作流程核心组件工作流程 总结 算法详细描述&#xff1a;1. 轮询&#xff08;Round Robin&#xff09;2. 最少连接&#xff08;Least Connections&#xff09;3. IP散列&#xff08;IP Hash&…...

spring是如何解决循环依赖的,为什么不是两级

1. Spring使用三级缓存来解决循环依赖问题 Spring使用三级缓存来解决循环依赖问题&#xff0c;‌而不是使用两级缓存。‌ 在Spring框架中&#xff0c;‌解决循环依赖的关键在于正确地管理Bean的生命周期和依赖关系。‌循环依赖指的是两个或多个Bean相互依赖&#xff0c;‌如果…...

大模型预训练优化参数设置

文章目录 基于批次数据的训练学习率优化器稳定优化技术与传统神经网络的优化类似,通常使用批次梯度下降算法来进行模型参数的调优。同时,通过调整学习率以及优化器中的梯度修正策略,可以进一步提升训练的稳定性。为了防止模型对数据产生过度拟合,训练中还需要引入一系列正则…...

PHP pwn 学习 (2)

文章目录 A. 逆向分析A.1 基本数据获取A.2 函数逆向zif_addHackerzif_removeHackerzif_displayHackerzif_editHacker A.3 PHP 内存分配 A.4 漏洞挖掘B. 漏洞利用B.1 PHP调试B.2 exp 上一篇blog中&#xff0c;我们学习了一些PHP extension for C的基本内容&#xff0c;下面结合一…...

【Python学习笔记】:Python爬取音频

【Python学习笔记】&#xff1a;Python爬取音频 背景前摇&#xff08;省流可以不看&#xff09;&#xff1a; 人工智能公司实习&#xff0c;好奇技术老师训练语音模型的过程&#xff0c;遂请教&#xff0c;得知训练数据集来源于爬取某网页的音频。 很久以前看B站同济子豪兄的《…...

4 C 语言控制流与循环结构的深入解读

目录 1 复杂表达式的计算过程 2 if-else语句 2.1 基本结构及示例 2.2 if-else if 多分支 2.3 嵌套 if-else 2.4 悬空的 else 2.5 注意事项 2.5.1 if 后面不要加分号 2.5.2 省略 else 2.5.3 省略 {} 2.5.4 注意点 3 while 循环 3.1 一般形式 3.2 流程特点 3.3 注…...

vue排序

onEnd 函数示例&#xff0c;它假设 drag.value 是一个包含多个对象&#xff08;每个对象至少包含 orderNum 和 label 属性&#xff09;的数组&#xff0c;且您希望在拖动结束后更新所有元素的 orderNum 以反映新的顺序&#xff1a; function onEnd(e) { // 首先&#xff0c;确…...

agv叉车slam定位精度测试标准化流程

相对定位精度 条件&#xff1a;1.5m/s最高速度&#xff1b;基于普通直行任务 数据采集&#xff08;3个不同位置的直行任务&#xff0c;每个任务直行约10m&#xff0c;每个10次&#xff09; 测量每次走过的实际距离&#xff0c;与每次根据定位结果算得的相对距离&#xff0c;两…...

实战打靶集锦-31-monitoring

文章目录 1. 主机发现2. 端口扫描3. 服务枚举4. 服务探查4.1 ssh服务4.2 smtp服务4.3 http/https服务 5. 系统提权5.1 枚举系统信息5.2 枚举passwd文件5.3 枚举定时任务5.4 linpeas提权 6. 获取flag 靶机地址&#xff1a;https://download.vulnhub.com/monitoring/Monitoring.o…...

小程序-模板与配置

一、WXML模板语法 1.数据绑定 2.事件绑定 什么是事件 小程序中常用的事件 事件对象的属性列表 target和currentTarget的区别 bindtap的语法格式 在事件处理函数中为data中的数据赋值 3.事件传参与数据同步 事件传参 &#xff08;以下为错误示例&#xff09; 以上两者的…...

交叉编译aarch64的Qt5.12.2,附带Mysql插件编译

一、配置交叉编译工具链 1、交叉编译工具链目录 /opt/zlg/m3568-sdk-v1.0.0-ga/gcc-buildroot-9.3.0-2020.03-x86_64_aarch64-rockchip-linux-gnu/bin/aarch64-rockchip-linux-gnu-g /opt/zlg/m3568-sdk-v1.0.0-ga/gcc-buildroot-9.3.0-2020.03-x86_64_aarch64-rockchip-linu…...

好用的Ubuntu下的工具合集[持续增加]

1. 终端工具 UBUNTU下有哪些好用的终端软件? - 知乎 (zhihu.com) sudo apt install terminator...

Xcode 16 beta3 真机调试找不到 Apple Watch 的尝试解决

很多小伙伴们想用 Xcode 在 Apple Watch 真机上调试运行 App 时却发现&#xff1a;在 Xcode 设备管理器中压根找不到对应的 Apple Watch 设备。 大家是否已将 Apple Watch 和 Mac 都重启一万多遍了&#xff0c;还是束手无策。 Apple Watch not showing in XCodeApple Watch wo…...

Three.JS 使用RGBELoader和CubeTextureLoader 添加环境贴图

导入RGBELoader模块&#xff1a; import { RGBELoader } from "three/examples/jsm/loaders/RGBELoader.js"; 使用 addRGBEMappingk(environment, background,url) {rgbeLoader new RGBELoader();rgbeLoader.loadAsync(url).then((texture) > {//贴图模式 经纬…...

k8s logstash多管道配置

背景 采用的是标准的ELKfilebeat架构 ES版本&#xff1a;7.17.15 logstash版本&#xff1a;7.17.15 filebeat版本&#xff1a; 7.17.15 helm版本&#xff1a;7.17.3&#xff0c;官方地址&#xff1a;elastic/helm-charts 说一下为什么会想到使用多管道的原因 我们刚开始…...

【CMU博士论文】结构化推理增强大语言模型(Part 0)

问题 &#xff1a;语言生成和推理领域的快速发展得益于围绕大型语言模型的用户友好库的普及。这些解决方案通常依赖于Seq2Seq范式&#xff0c;将所有问题视为文本到文本的转换。尽管这种方法方便&#xff0c;但在实际部署中存在局限性&#xff1a;处理复杂问题时的脆弱性、缺乏…...

Odoo创建一个自定义UI视图

Odoo能够为给定的模型生成默认视图。在实践中&#xff0c;默认视图对于业务应用程序来说是绝对不可接受的。相反&#xff0c;我们至少应该以合乎逻辑的方式组织各个字段。 视图在带有Actions操作和Menus菜单的 XML 文件中定义。它们是模型的 ir.ui.view 实例。 列表视图 列表视…...

Day16_集合与迭代器

Day16-集合 Day16 集合与迭代器1.1 集合的概念 集合继承图1.2 Collection接口1、添加元素2、删除元素3、查询与获取元素不过当我们实际使用都是使用的他的子类Arraylist&#xff01;&#xff01;&#xff01; 1.3 API演示1、演示添加2、演示删除3、演示查询与获取元素 2 Iterat…...

html2canvas + jspdf 纯前端HTML导出PDF的实现与问题

前言 这几天接到一个需求&#xff0c;富文本编辑器的内容不仅要展示出来&#xff0c;还要实现展示的内容导出pdf文件。一开始导出pdf的功能是由后端来做的&#xff0c;然后发现对于宽度太大的图片&#xff0c;导出的pdf文件里部分图片内容被遮盖了&#xff0c;但在前端是正常显…...

视频质量评估技术解析与ClearView系统实践

1. 视频质量评估的行业现状与技术痛点 在数字电视和流媒体爆发式增长的今天&#xff0c;视频质量评估&#xff08;Video Quality Assessment, VQA&#xff09;已成为设备制造商和内容提供商的核心竞争力指标。我从事视频处理算法开发已有八年&#xff0c;亲眼见证了这个领域从依…...

GPU加速向量搜索实战:cuVS核心原理与CAGRA算法应用

1. 从CPU到GPU&#xff1a;向量搜索的范式转移与cuVS的诞生如果你最近在折腾大模型应用、推荐系统或者任何需要处理海量高维数据的项目&#xff0c;那么“向量搜索”这个词对你来说一定不陌生。简单来说&#xff0c;它就是把文本、图片、音频这些非结构化数据&#xff0c;通过模…...

为什么头部AI Lab已全员切换SITS2026?揭秘其内置的4层语义校验引擎与实时可观测性埋点设计

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI原生应用CI/CD&#xff1a;SITS2026 AI原生应用正推动软件交付范式发生根本性变革——模型权重、提示工程、评估指标与代码同等重要&#xff0c;传统CI/CD流水线已无法覆盖训练-推理-反馈闭环。SITS2…...

【Oracle数据库指南】第03篇:Oracle SQL分组统计与排序——GROUP BY、HAVING与ORDER BY深度解析

上一篇【第02篇】Oracle SQL查询高级技巧——条件与函数 下一篇【第04篇】Oracle多表查询与连接操作——JOIN的全面解析 摘要 本文详细讲解Oracle SQL中的分组统计功能&#xff0c;包括分组函数&#xff08;COUNT、SUM、AVG、MAX、MIN等&#xff09;的用法、GROUP BY子句的多列…...

AI编码助手经验治理:ExperienceEngine解决重复错误与智能进化

1. 项目概述&#xff1a;为编码智能体引入“经验治理层”如果你和我一样&#xff0c;长期使用像 Claude Code、Cursor 或 OpenClaw 这类 AI 编码助手&#xff0c;肯定会遇到一个让人头疼的问题&#xff1a;同一个项目里&#xff0c;AI 助手会反复犯下几乎一模一样的错误。比如&…...

Noto字体库完整指南:如何为全球项目选择完美字体解决方案

Noto字体库完整指南&#xff1a;如何为全球项目选择完美字体解决方案 【免费下载链接】noto-fonts Noto fonts, except for CJK and emoji 项目地址: https://gitcode.com/gh_mirrors/no/noto-fonts 当你开发面向全球用户的应用或网站时&#xff0c;是否曾遇到过这样的…...

如何快速掌握DeepL翻译插件:终极跨语言浏览解决方案

如何快速掌握DeepL翻译插件&#xff1a;终极跨语言浏览解决方案 【免费下载链接】deepl-chrome-extension A DeepL Translator Chrome extension 项目地址: https://gitcode.com/gh_mirrors/de/deepl-chrome-extension 在全球化的数字时代&#xff0c;语言障碍是获取国际…...

独立开发者工具箱:2026年全栈与AI应用高效开发技术栈指南

1. 项目概述与核心价值作为一名在独立开发领域摸爬滚打了十多年的老兵&#xff0c;我深知一个道理&#xff1a;工具选型&#xff0c;是决定项目成败的第一道分水岭。你花在纠结技术栈、寻找合适API、调试部署环境上的每一分钟&#xff0c;都是从产品核心价值中偷走的时间。今天…...

机器学习之逻辑回归详解

摘要逻辑回归&#xff08;Logistic Regression&#xff09;是机器学习中最基础且应用最广泛的分类算法之一。尽管名字中带有“回归”二字&#xff0c;但它实际上是一种经典的分类算法&#xff0c;主要用于解决二分类和多分类问题。本文将从几何回归的原理出发&#xff0c;详细介…...

3步完成Windows和Office永久激活:KMS_VL_ALL_AIO终极指南

3步完成Windows和Office永久激活&#xff1a;KMS_VL_ALL_AIO终极指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows和Office激活问题烦恼吗&#xff1f;KMS_VL_ALL_AIO是一款智能…...