leetcode20
public class Solution {
Stack<char> S = new Stack<char>();
public bool IsValid(string s)
{
foreach (var c in s)
{
if (c == '(' || c == '[' || c == '{')
{
S.Push(c);
}
else if(c == ')')
{
if (S.Count > )
{
var k = S.Peek();
if (k == '(')
{
S.Pop();
}
else
{
return false;
}
}
else
{
return false;
}
}
else if (c == ']')
{
if (S.Count > )
{
var k = S.Peek();
if (k == '[')
{
S.Pop();
}
else
{
return false;
}
}
else
{
return false;
}
}
else if (c == '}')
{
if (S.Count > )
{
var k = S.Peek();
if (k == '{')
{
S.Pop();
}
else
{
return false;
}
}
else
{
return false;
}
}
}
if (S.Count > )
{
return false;
}
else
{
return true;
}
}
}
https://leetcode.com/problems/valid-parentheses/#/description
补充一个python的实现:
class Solution:
def isValid(self, s: str) -> bool:
n = len(s)
if n == :
return True
stack = []
for c in s:
if c == '(' or c == '{' or c == '[':
stack.append(c)
elif c == ')':
if len(stack) > :
if stack[-] == '(':
stack.pop(-)
else:
stack.append(')')
else:
return False
elif c == '}':
if len(stack) > :
if stack[-] == '{':
stack.pop(-)
else:
stack.append('}')
else:
return False
elif c == ']':
if len(stack) > :
if stack[-] == '[':
stack.pop(-)
else:
stack.append(']')
else:
return False
if len(stack) == :
return True
else:
return False
leetcode20的更多相关文章
- LeetCode20 Valid Parentheses
题意: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the ...
- [Swift]LeetCode20. 有效的括号 | Valid Parentheses
Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the inpu ...
- LeetCode20:validParentheses
validParentheses 题目描述 Given a string containing just the characters '(', ')', '{', '}', '[' and ']', ...
- leetcode20:有效的括号
给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合. 左括号必须以正确的顺序闭合. 注意空字符串可被认 ...
- [LeetCode-20]Construct Binary Tree from Inorder and Postorder Traversal
Given inorder and postorder traversal of a tree, construct the binary tree. Note: You may assume tha ...
- LeetCode20.有效的括号 JavaScript
给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合. 左括号必须以正确的顺序闭合. 注意空字符串可被认 ...
- LeetCode20——有效的括号
在记事本中写算法题和在纸上写其实感觉差不多,反正是不能进行调试.想起某高手的话,写代码要做到“人机合一”,写高级语言时(指的是 C 和 C++)脑海中要知道当前写的代码对应的反汇编代码,也就是要深入了 ...
- <每日 1 OJ> -LeetCode20. 有效的括号
题目: 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合.左括号必须以正确的顺序闭合.注意空字符串可 ...
- 面试之leetcode20堆栈-字符串括号匹配,队列实现栈
1 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合.左括号必须以正确的顺序闭合.注意空字符串可被认 ...
随机推荐
- 第十二次作业 - Beta答辩总结
目录 前言 项目的链接与宣传 项目总结 原计划 达成情况 原因分析 [ Beta 冲刺博客链接汇总] [燃尽图] Beta版本展示 使用说明 视频展示 图片展示 答辩总结 [团队中个人的贡献比例] [ ...
- 在myeclipse中maven项目关于ssh整合时通过pom.xml导入依赖是pom.xml头部会报错
错误如下 ArtifactTransferException: Failure to transfer org.springframework:spring-jdbc:jar:3.0.5.RELEAS ...
- 将100道计算题输出至txt文件,再读取文件至控制台,在控制台中输入答案并评判对错
我在课堂上基本完成了输出100道题和创建文档,但是因为对输入输出流不熟悉,所以并没有实现将输出的计算题导出到文档里,在课下我又请教了宿舍的大佬,基本完成如下: 源代码: import java.io. ...
- Address localhost:1099 is already in use
在 ItelliJ idea中创建了Servlet,启动tomcat时系统报错: Error running Tomcat 7.0.47: Address localhost:1099 is alre ...
- xshell连接linux主机时,出现错误:Could not connect to '***.***.***.***' (port 22)
xshell连接linux主机时,会出现错误:Could not connect to '192.168.89.144' (port 22): Connection failed. 但是这时能ping ...
- docker删除镜像文件时,出现image is referenced in multiple repositories如何解决
1.输入查看镜像文件的命令: $ docker image ls 得到如下结果: 2.删除名为lihui/demo的镜像,输入如下命令: $ docker rmi 9fa504a6066a 报错,报错 ...
- 内存溢出eclipse启动tomcat
1.在eclipse中的Window->preferences->Java->install jar->选择JDK,然后在点击Edit,在Default VM argument ...
- Arch Linux pacman 与其他发行版操作比较
原文:https://wiki.archlinux.org/index.php/Pacman/Rosettahttps://old-en.opensuse.org/Software_Managemen ...
- JVM优化系列之一(-Xss调整Stack Space的大小)
Java程序中,每个线程都有自己的Stack Space(堆栈).这个Stack Space不是来自Heap的分配.所以Stack Space的大小不会受到-Xmx和-Xms的影响,这2个JVM参数仅 ...
- Python Pycharm 专题
http://www.themesmap.com/theme.html?t=time&page=3 一些好的主题地址 直接导入import settings就可以使用了