【leetcode算法-简单】20. 有效的括号
【题目描述】
给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。
【解答】
- 解法:利用栈的先入后出的特性,对括号进行匹配
 
  
def isValid(self, s: str) -> bool:
if len(s)%2 == 1: return False #如果字符串长度是奇数,返回False
dic = {'(':')','[':']','{':'}'}
stack = []
for i in range(len(s)):
if s[i] == '(' or s[i] == '[' or s[i] == '{': #将所有左括号入栈
stack.append(s[i])
if len(stack) == 0: #如果右括号没有匹配的左括号
return False
if s[i] == dic[stack[-1]]: #如果有匹配的括号则出栈
stack.pop()
return len(stack) == 0
执行用时:34ms
【leetcode算法-简单】20. 有效的括号的更多相关文章
- Leetcode题库——20.有效的括号
		
@author: ZZQ @software: PyCharm @file: IsValid.py @time: 2018/9/16 20:20 要求: 给定一个只包括 '(',')','{','}' ...
 - 【leetcode算法-简单】1.两数之和
		
[题目描述] 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个 ...
 - 【leetcode算法-简单】7.整数反转
		
[题目描述] 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123输出: 321 示例 2: 输入: -123输出: -321 示例 3: 输入: 12 ...
 - 【leetcode算法-简单】13. 罗马数字转整数
		
[题目描述] 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列 ...
 - 【leetcode算法-简单】9. 回文数
		
[题目描述] 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121输出: true示例 2: 输入: -121输出: false解释: ...
 - House Robber                                                    分类:            leetcode             算法             2015-07-09 20:53    2人阅读    评论(0)    收藏
		
DP 对于第i个状态(房子),有两种选择:偷(rob).不偷(not rob) 递推公式为: f(i)=max⎧⎩⎨⎪⎪{f(i−1)+vali,f(i−2)+vali,robi−1==0robi−1 ...
 - 【leetcode算法-简单】66. 加一
		
[题目描述] 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字. 你可以假设除了整数 0 之外,这个整数不会以零开头. 示 ...
 - 【leetcode算法-简单】58. 最后一个单词的长度
		
[题目描述] 给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度. 如果不存在最后一个单词,请返回 0 . 说明:一个单词是指由字母组成,但不包含任何空格的字符串. 示例: 输 ...
 - 【leetcode算法-简单】53. 最大子序和
		
[题目描述] 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: ...
 
随机推荐
- csv和xlsx区别
			
CSV是文本文件,用记事本就能打开.XLS 是二进制的文件只有用 EXCEL 才能打开: CSV 文件格式只能保存活动工作表中的单元格所显示的文本和数值.数据列以逗号分隔,每一行数据都以回车符结束.如 ...
 - PHP mysqli_error() 函数
			
返回最近调用函数的最后一个错误描述: <?php // 假定数据库用户名:root,密码:123456,数据库:RUNOOB $con=mysqli_connect("localh ...
 - The websites related Laravel  相关网站(内容将不断更新)
			
https://laraveldaily.com/ 文章内容质量很高
 - 028_切割 Nginx 日志文件(防止单个文件过大,后期处理很困难)
			
mkdir /data/scriptsvim /data/scripts/nginx_log.sh #!/bin/bashlogs_path="/usr/local/nginx/logs/& ...
 - 五十六. playbook基础 、 playbook进阶
			
1.playbook练习 安装Apache并修改监听端口为8080 修改ServerName配置,执行apachectl -t命令不报错 设置默认主页hello world 启动服务并设开机自启 ...
 - WORD粘贴图片+DEDE
			
自动导入Word图片,或者粘贴Word内容时自动上传所有的图片,并且最终保留Word样式,这应该是Web编辑器里面最基本的一个需求功能了.一般情况下我们将Word内容粘贴到Web编辑器(富文本编辑器) ...
 - 数据结构实验之栈与队列六:下一较大值(二)(SDUT 3333)
			
#include <bits/stdc++.h> using namespace std; int a[1000006]; int b[1000006]; int sta[100006]; ...
 - Simple Problem with Integers(POJ 3486)
			
A Simple Problem with Integers Time Li ...
 - codeforces533E
			
Correcting Mistakes CodeForces - 533E Analyzing the mistakes people make while typing search queries ...
 - 学完微型服务器(Tomcat)对其工作流程的理解,自己着手写个简单的tomcat
			
学完微型服务器(Tomcat)对其工作流程的理解,自己着手写个简单的tomcat 2019-05-09 19:28:42 注:项目(MyEclipse)创建的时候选择:Web Service Pr ...