有效的括号

给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。
  2. 左括号必须以正确的顺序闭合。
  3. 每个右括号都有一个对应的相同类型的左括号。

示例 :
输入:s = “()”
输出:true
示例 2:

输入:s = “()[]{}”
输出:true
示例 3:

输入:s = “(]”
输出:false

解法一:

    const isValid = function (s) {if (s.length % 2 === 1) return falselet i=0,n=s.length/2while (i<n){s=s.replace('{}','')s=s.replace("()",'')s=s.replace("[]",'')i++}return s === ''};

在这里插入图片描述

解法二:

    const isValid = function (s) {if (s.length % 2 === 1) return falselet i=0,n=s.length/2for (let j = 0; j < n; j++) {s=s.replace('{}','')s=s.replace("()",'')s=s.replace("[]",'')i++}return s === ''};

在这里插入图片描述

解法三:

    const isValid = function (s) {if (s.length % 2 === 1) return false;let stack = [], map = {")":"(","}":"{","]":"["};for (const ch of s) {if (map[ch]){if (!stack.length || stack[stack.length-1]!==map[ch]) return falsestack.pop()} else {stack.push(ch)}}return !stack.length};

在这里插入图片描述

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

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

相关文章

架构风格-架构师(六十六)

管道-过滤器和仓库 数据处理方式&#xff1a; 管道过滤器是 数据驱动机制&#xff0c;处理流程事前确定&#xff0c;交互差。 仓库是通过仓库中间件交互&#xff0c;交互性强&#xff0c;灵活组装 系统可扩展性&#xff1a; 管道过滤器是数和处理在一起&#xff0c;需要新增…

任务1 部署ChatGLM3-6B大模型并进行对话测试

部署ChatGLM3-6B大模型并进行对话测试 0 介绍&#xff1a;1 趋动云项目创建与环境配置1.1 创建项目&#xff1a;1.2 配置环境1.2.1 进入终端1.2.2 设置镜像源1.2.3 克隆项目,并安装依赖 2 修改代码&#xff0c;改路径以及启动代码3 运行代码3.1 运行gradio界面&#xff1a;3.2 …

USB PD v1.0快速充电通信原理

1 原理 本篇文章讲的快速充电是指USB论坛所发布的USB Power Delivery快速充电规范&#xff08;通过VBUS直流电平上耦合FSK信号来请求充电器调整输出电压和电流的过程&#xff09;&#xff0c;不同于本人发布的另一篇文章所讲的高通Quick Charger 2.0规范&#xff0c;因为高通QC…

若依分离版——配置多数据源(mysql和oracle),实现一个方法操作多个数据源

目录 一、若依平台配置 二、编写oracle数据库访问的各类文件 三. 一个方法操作多个数据源 一、若依平台配置 1、在ruoyi-admin的pom.xml添加依赖 <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version…

[创业之路-85]:创业公司如何办理云服务器(PaaS)

目录 一、云服务 1.1 云服务器类型 1.2 云服务案例 二、搭建云服务器的基本步骤 二、云服务的架构&#xff08;架构&#xff09; 2.1 层次架构 2.2 云平台统一管理功能 2.3 管理工具 一、云服务 1.1 云服务器类型 云服务&#xff08;Cloud Services&#xff09;是一种…

12.JavaScript(WebAPI) - JS api文献精解

文章目录 1.WebAPI 背景知识1.1什么是 WebAPI1.2什么是 API1.3API 参考文档 2.DOM 基本概念2.1什么是 DOM2.2DOM 树 3.获取元素3.1querySelector3.2querySelectorAll 4.事件初识4.1基本概念4.2事件三要素4.3简单示例 5.操作元素5.1获取/修改元素内容5.1.1innerText5.1.2innerHT…

无需使用jadx-gui和mac电脑获取app备案公钥的方法

由于2023年&#xff0c;国家要求上架的app必须备案&#xff0c;因此app备案成为了很多公司迫切的需求。 备案的时候&#xff0c;需要填写app公钥&#xff0c;MD5值等参数&#xff0c;这些参数对于不熟悉加密技术的人来说&#xff0c;简直是无从下手&#xff0c;因为目前的开发…

Compose-Multiplatform在Android和iOS上的实践

本文字数&#xff1a;4680字 预计阅读时间&#xff1a;30分钟 01 简介 之前我们探讨过KMM&#xff0c;即Kotlin Multiplatform Mobile&#xff0c;是Kotlin发布的移动端跨平台框架。当时的结论是KMM提倡将共有的逻辑部分抽出&#xff0c;由KMM封装成Android(Kotlin/JVM)的aar和…

配置git并把本地项目连接github

一.配置git 1.下载git&#xff08;Git&#xff09;&#xff0c;但推荐使用国内镜像下载&#xff08;CNPM Binaries Mirror&#xff09; 选好64和版本号下载&#xff0c;全部点下一步 下载完成后打开终端&#xff0c;输入 git --version 出现版本号则说明安装成功 然后继续…

C++笔记之实现多态的所有方法

C笔记之实现多态的所有方法 code review! 文章目录 C笔记之实现多态的所有方法1.C中多态是是什么&#xff1f;请用简洁准确的话描述2.虚函数实现多态2.1.虚函数&#xff08;Virtual Functions&#xff09;2.2.纯虚函数&#xff08;Pure Virtual Functions&#xff09;2.3.虚析…

【【嵌入式开发 Linux 常用命令系列 10 -- Linux 修改终端下 ls 各种类型文件的显示颜色】

文章目录 Linux 修改终端下各种类型文件的显示颜色LS_COLORS 详细介绍 Linux 修改终端下各种类型文件的显示颜色 在 ~/.bashrc 文件最下面添加如下内容&#xff0c;就可以配置目录、文件、sh类型文件的颜色了。 export LS_COLORSdi1:fi0:*.sh33:$LS_COLORS这句话的意思就是在…

【C语法学习】15 - fopen()函数

文章目录 1 函数原型2 返回值3 参数3.1 文件名3.2 模式3.2.1 以"r"模式打开3.2.2 以"w"模式打开3.2.3 以"a"模式打开3.2.4 以"r"模式打开3.2.5 以"w"模式打开3.2.6 以"a"模式打开 1 函数原型 fopen()&#xff1a…