leetcode20.括号匹配

题目描述

给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
每个右括号都有一个对应的相同类型的左括号。
示例 1:
输入:s = “()”
输出:true
示例 2:
输入:s = “()[]{}”
输出:true
示例 3:
输入:s = “(]”
输出:false
示例 4:
输入:s = “([])”
输出:true
提示:
1 <= s.length <= 104
s 仅由括号 ‘()[]{}’ 组成

class Solution {
public:bool isValid(string s) {if (s.size() % 2 != 0) {return false;}stack<char> st;for (int i = 0; i < s.size(); i++) {//每读到一个左括号就入栈if (s[i] == '(' || s[i] == '[' || s[i] == '{') {st.push(s[i]);//每读到一个右括号就判断栈顶元素是否匹配,匹配了就弹出,不匹配return false//中间要提前判断栈是否为空} else if (s[i] == ')' && !st.empty() && st.top() == '(') {st.pop();} else if (s[i] == ']' && !st.empty() &&st.top() == '[') {st.pop();} else if (s[i] == '}' && !st.empty() &&st.top() == '{' ) {st.pop();} else {return false;}}//最后字符串便利完了,栈也空了就说明是匹配成功//否则就是匹配失败return st.empty();}
};

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

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

相关文章

如何使用 SSH 连接并管理你的 WordPress 网站

在当今数字化的世界里&#xff0c;网站的管理与维护至关重要。对于使用 WordPress 搭建网站的用户而言&#xff0c;掌握基本的 SSH&#xff08;安全壳&#xff09;命令能够极大地简化网站管理工作。本指南将向你介绍 SSH 的基本知识&#xff0c;并教你如何通过 SSH 连接和管理你…

核心数据类型转换

核心数据类型转换 前言 前几集我们简单做了三条我们前后端交互接口的约定&#xff0c;简单看了我们的proto文件的内容&#xff0c;简单介绍了我们的Protobuf&#xff0c;并将protobuffer引入了我们的项目之中。 那么这一集我们就要把我们protobuffer的proto文件里的核心数据…

深入学习指针(5)!!!!!!!!!!!!!!!

文章目录 1.回调函数是什么&#xff1f;2.qsort使用举例2.1使用qsort函数排序整形数据2.2使用sqort排序结构数据 3.qsort函数的模拟实现 1.回调函数是什么&#xff1f; 回调函数就是⼀个通过函数指针调⽤的函数。 如果你把函数的指针&#xff08;地址&#xff09;作为参数传递…

MyBatis xml 文件中 SQL 语句的小于号未转义导致报错

问题现象 在 MyBatis 的 xml 文件中添加了一个 SQL 语句 <select id"countXxx" resultType"int">select count(*) from t1 where count < 3 </select>启动 Spring Boot 应用程序后报错&#xff1a; Caused by: org.apache.ibatis.builde…

测试-正交表与工具pairs的介绍使用(1)

目录 正交表 生成正交表 步骤 实操 注意事项 编写测试用例 根据正交表编写测试用例 补充遗漏的重要测试用例 正交表 关于长篇大论也不多介绍了&#xff0c;我们只需要知道正交法的⽬的是为了减少⽤例数⽬&#xff0c;⽤尽量少的⽤例覆盖输⼊的两两组合 正交表的构成&…

qt QErrorMessage详解

1、概述 QErrorMessage是Qt框架中用于显示错误消息的一个对话框类。它提供了一个简单的模态对话框&#xff0c;用于向用户显示错误或警告消息。QErrorMessage通常用于应用程序中&#xff0c;当需要向用户报告错误但不希望中断当前操作时。它提供了一个标准的错误消息界面&…

设计模式(主要的五种)

1.设计模式&#xff1a; 设计模式就是代码设计经验 2.设计模式的类型&#xff1a; 分为三大类&#xff1a;创建型模式&#xff0c;结构型模式&#xff0c;行为模式 创建型模式&#xff1a; 单例模式&#xff1a;某个类只能有一个实例&#xff0c;提供一个全局的访问点。 工…

ZABBIX API获取监控服务器OS层信息

Zabbix 是一款强大的开源监控解决方案,能够通过其 API 接口自动化管理和获取监控数据。在这篇文章中,详细讲解如何通过 Zabbix API 批量获取服务器的系统名称、IP 地址及操作系统版本信息,并将数据保存到 CSV 文件中。本文适合对 Python 编程和 Zabbix 监控系统有一定基础的…

医院信息化与智能化系统(18)

医院信息化与智能化系统(18) 这里只描述对应过程&#xff0c;和可能遇到的问题及解决办法以及对应的参考链接&#xff0c;并不会直接每一步详细配置 如果你想通过文字描述或代码画流程图&#xff0c;可以试试PlantUML&#xff0c;告诉GPT你的文件结构&#xff0c;让他给你对应…

场景解决方案丨迎战电商大促,企业管理跟踪驾驶舱助力中小企业打赢决胜之战

该方案已沉淀为➡️订单物流信息跟踪模板&#xff0c;点击&#x1f517;即可体验 随着互联网技术的发展和市场经济的变化&#xff0c;各行业的线上竞争愈发激烈。一方面&#xff0c;互联网平台凭借便捷的服务和丰富的产品吸引了大量客户&#xff1b;另一方面&#xff0c;复杂多…

Python练习12

Python日常练习 题目&#xff1a; 试题文件夹下的文本文件sentences.txt中&#xff0c;每行对应一个句子&#xff0c;该句子包含了多个 单词&#xff0c;单词之间以空格隔开。每个单词仅包含英文字母。我们希望能够将文件中的 每个句子转换为“山羊语”。句子的每…

DeFi 4.0峥嵘初现:主权金融时代的来临

近年来&#xff0c;Web3领域的创新似乎遇到了瓶颈&#xff0c;DeFi&#xff08;去中心化金融&#xff09;从热潮的巅峰逐渐进入了一个沉寂期。我们再也没有见到像DeFi Summer那样的行业兴奋&#xff0c;资本市场的动荡和Meme币的出现&#xff0c;似乎让人们忘记了曾经的区块链技…

如何通过六个步骤保护 AI 生成的代码

可以通过执行静态应用程序安全测试、动态安全测试、软件组合分析、使用安全代码实践、实施安全控制以及培训开发人员安全最佳实践来保护 AI 生成的代码。 随着人工智能 (AI) 在软件开发中发挥着越来越重要的作用&#xff0c;优先考虑 AI 生成的代码的安全性至关重要。 与人类…

51单片机教程(七)- 蜂鸣器

1 项目分析 利用P2.3引脚输出电平变化&#xff0c;控制蜂鸣器的鸣叫。 2 技术准备 1 蜂鸣器介绍 有绿色电路板的一种是无源蜂鸣器&#xff0c;没有电路板而用黑胶封闭的一种是有源蜂鸣器。 有源蜂鸣器和无源蜂鸣器 这里的“源”不是指电源。而是指震荡源。也就是说有源蜂鸣…

LangChain实际应用

1、LangChain与RAG检索增强生成技术 LangChain是个开源框架&#xff0c;可以将大语言模型与本地数据源相结合&#xff0c;该框架目前以Python或JavaScript包的形式提供&#xff1b; 大语言模型&#xff1a;可以是GPT-4或HuggingFace的模型&#xff1b;本地数据源&#xff1a;…

java的面向对象(从入门到深入)

目录 一、基本概念&#xff1a; 1.类 2.对象 3.继承 4.多态 5.封装 6.方法 7.接口 8.抽象 二、深入概念&#xff1a; 三:总结 一、基本概念&#xff1a; 1.类 类就是一个一个东西的蓝图&#xff0c;里面有着它的属性和方法。 2.对象 对象是一个类的实例化。 3.继承…

基础数据结构——队列(链表实现)

队列的性质 先进先出&#xff08;FIFO - First In First Out&#xff09;&#xff1a;最先加入队列的元素最先被移出后进后出&#xff08;后来的元素排在队尾&#xff09;只允许在队尾插入元素&#xff0c;在队首删除元素具有先来先服务的特点 链表实现队列 和之前创建链表相…

单纯的查询而言,vector和map谁更快

单纯的查询而言&#xff0c;vector和map谁更快 文章目录 单纯的查询而言&#xff0c;vector和map谁更快一、vector的查询二、vector和map对比三、总结 一、vector的查询 这道题目需要知道vector查询和随机访问的不同。 假设有一个包含 n 个元素的vector集合&#xff0c;需要查…

大A终究是逃不过高开低走的魔咒

大A终究是逃不过高开低走的魔咒&#xff0c;早盘高开太多&#xff0c;周末休市&#xff0c;今天会议结束&#xff0c;各种不确定因素增加等原因导致午盘普跌。其实还是那句话&#xff0c;股市嘛&#xff0c;涨多了会跌&#xff0c;跌多了会涨&#xff0c;别急也别慌。 周末&…

Ceisum无人机巡检视频投放

公司投标内容有个视频投放的功能动画&#xff0c;原本想实现这么一个效果&#xff1a; 案例效果来自别人的展示作品&#xff0c;Leader一眼就相中了这个效果&#xff0c;可惜别人的终究是别人的&#xff0c;又不会白白给你&#xff0c;终究是要自己动手尝试。 动画方面的展示…