23--有效的括号

文章目录

  • 1.题目详情
  • 2.代码详情

1.题目详情

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

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。

示例 1:
输入: “()”
输出: true

示例 2:
输入: “()[]{}”
输出: true

示例 3:
输入: “(]”
输出: false

2.代码详情

python:

class Solution(object):def isValid(self, s):stack = []mapping = {")": "(", "}": "{", "]": "["}for char in s:if char in mapping:top_element = stack.pop() if stack else '#'if mapping[char] != top_element:return Falseelse:stack.append(char)return not stack

java:

class Solution {private HashMap<Character, Character> mappings;public Solution() {this.mappings = new HashMap<Character, Character>();this.mappings.put(')', '(');this.mappings.put('}', '{');this.mappings.put(']', '[');}public boolean isValid(String s) {Stack<Character> stack = new Stack<Character>();for (int i = 0; i < s.length(); i++) {char c = s.charAt(i);if (this.mappings.containsKey(c)) {char topElement = stack.empty() ? '#' : stack.pop();if (topElement != this.mappings.get(c)) {return false;}} else {stack.push(c);}}return stack.isEmpty();}
}

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

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

相关文章

11 步教你选择最稳定的 MySQL 版本

MySQL开源数据库有多个重要分支&#xff0c;目前拥有的分支分别为&#xff1a;MySQL Cluster、MySQL 5.1、MySQL 5.5、MySQL 6.2。每个分支都有着同样的的MySQL数据库版本&#xff0c;分别为&#xff1a;Development版本、Alpha版本、Beta版本、RC版本和GA版本。Development版本…

【RabbitMQ】6、rabbitmq生产者的消息确认

2019独角兽企业重金招聘Python工程师标准>>> 通过Publisher Confirms and Returns机制&#xff0c;生产者可以判断消息是否发送到了exchange及queue&#xff0c;而通过消费者确认机制&#xff0c;Rabbitmq可以决定是否重发消息给消费者&#xff0c;以保证消息被处理…

泛型方法

java泛型方法简单介绍

修改jquery文件上传插件uploadify的英文为中文

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 效果&#xff1a; 对于这种样式的问题&#xff0c;我都是简单粗爆的解决&#xff1a; 找到uploadify的js文件&#xff0c;通常不是js&…

24--反转字符串中的单词 III

文章目录1.问题描述2. 代码详情1.问题描述 给定一个字符串&#xff0c;你需要反转字符串中每个单词的字符顺序&#xff0c;同时仍保留空格和单词的初始顺序。 示例 1: 输入: “Let’s take LeetCode contest” 输出: “s’teL ekat edoCteeL tsetnoc” 注意&#xff1a;在字…

poj2976 Dropping tests

01分数规划裸题 为毛二分一定要打成rmid这么恶心啊 #include<cstdio> #include<iostream> #include<cstring> #include<cstdlib> #include<algorithm> #include<cmath> using namespace std; typedef long long LL;int n,k; double a[1100…

Apache Cassandra 1.1.0 稳定版发布

Apache Cassandra团队今天正式推出了1.1分支的首个稳定版1.1.0版本。Apache Cassandra是一套开源的分布式 NoSQL 数据库系统&#xff0c;遵循 Apache Lience 2 协议。它最初由 Facebook 开发&#xff0c;用于储存收件箱等简单格式数据&#xff0c;集 Google BigTable 的数据模型…

如何仅花25美元并在3小时内完成ImageNet训练?

译者 | 核子可乐编辑 | Debra、VincentAI 前线导读&#xff1a;在斯坦福大学建立的项目 DAWNBench 竞赛中&#xff0c;CIFAR10 与 ImageNet 的表现引起了人们的关注&#xff0c;在目标基本一致的前提下&#xff0c;两者的准确度分别达 94% 和 93%&#xff0c;在成本和速度上均有…

java中什么是上下文

所谓上下文&#xff0c;它是用来存储系统的一些初始化信息&#xff0c;例如在jboss中通过配置文件指定了数据源&#xff0c;那么在jboss启动的时候就把这个文件的相关信息加载到上下文中&#xff0c;于是在我们使用这个数据源的时候&#xff0c;就需要先获得系统的上下文&#…

jquery文件上传插件uploadify 讲解

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1.名词解释&#xff1a; tracker服务器&#xff1a;中文叫做跟踪器&#xff0c;主要做调度工作&#xff0c;在访问上起负载均衡的作用。&…

POJ 1651 Multiplication Puzzle(类似矩阵连乘 区间dp)

传送门&#xff1a;http://poj.org/problem?id1651 Multiplication PuzzleTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 13109 Accepted: 8034Description The multiplication puzzle is played with a row of cards, each containing a single positive integ…

25--最后一个单词的长度

文章目录1.问题描述2.代码详情1.问题描述 给定一个仅包含大小写字母和空格 ’ ’ 的字符串 s&#xff0c;返回其最后一个单词的长度。如果字符串从左向右滚动显示&#xff0c;那么最后一个单词就是最后出现的单词。 如果不存在最后一个单词&#xff0c;请返回 0 。 说明&…

MySQL 企业监控器 2.3.10 正式版发布

Oracle于近日发布了 MySQL 企业监控器 2.3.10 正式版。 MySQL企业监控器主要用于实施对数据库进行监控和管理。通过它&#xff0c;数据库管理员不但可以获得高级的数据复制和数据库监控功能&#xff0c;同时还可以简化安装流程。而且&#xff0c;无论是对于MySQL企业版&#xf…

Docker 跨主机网络方案分析

PS&#xff1a;文章首发公众号&#xff0c;欢迎大家关注我的公众号&#xff1a;aCloudDeveloper&#xff0c;专注技术分享&#xff0c;努力打造干货分享平台&#xff0c;二维码在文末可以扫&#xff0c;谢谢大家。 上篇文章介绍了容器网络的单主机网络&#xff0c;本文将进一步…

java中为什么使用上转型和下转型

为什么使用上转型&#xff1f;因为当一个父类有很多子类&#xff0c;子类都重写了父类的方法并加以使用。这时候&#xff0c;如果要在之前代码让你用其他子类来实现&#xff0c;就变得很简单&#xff0c;只需要把A a new B();换成A a new C();&#xff08;假设B和C都继承了A&…

session和cache的区别

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 以前实现数据的缓存有很多种方法&#xff0c;有客户端的Cookie&#xff0c;有服务器端的Session和Application。 其中Cookie是保存在客…

第四个

。 转载于:https://www.cnblogs.com/wxy2000/p/9657823.html

26-- 转换成小写字母

文章目录1.问题描述2.代码详情1.问题描述 实现函数 ToLowerCase()&#xff0c;该函数接收一个字符串参数 str&#xff0c;并将该字符串中的大写字母转换成小写字母&#xff0c;之后返回新的字符串。 示例 1&#xff1a; 输入: “Hello” 输出: “hello” 示例 2&#xff1a;…

java守护线程和用户线程的区别

Java中的线程可以分为两类&#xff0c;即用户线程和守护线程。用户线程是为了完成任务&#xff0c;而守护线程主要是为其他线程服务。 守护线程的唯一用途是为其他线程提供服务。守护线程会随时中断&#xff0c;因此不要在守护线程上使用需要释放资源的资源&#xff0c;如输入输…

初学duboo+zookeeper

看了很多相关资料&#xff0c;其实都没有自己动手试一次印象更深刻一些。找了很多教程&#xff0c;下工具&#xff0c;花了几个小时终于让程序跑起来了&#xff0c;下面说下步骤&#xff1a;1.java环境也就安装jdk&#xff0c;我使用的是1.7版本&#xff0c;jdk安装就不在这复述…