博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode:Valid Parentheses(有效括号匹配)
阅读量:6481 次
发布时间:2019-06-23

本文共 970 字,大约阅读时间需要 3 分钟。

Question:

Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.

The brackets must close in the correct order, "()" and "()[]{}" are all valid but "(]" and "([)]" are not.

给定一个字符串仅仅包含这些字'(', ')', '{', '}', '[' and ']',  判定输入的字符串是否是可匹配的,括号必须以正确的顺序打开关闭,比如"()" and "()[]{}" 。

 

 

 

算法思想:① 这个题首先会想到用栈进行存储操作,遇到左边的字符‘[’,'{',‘(’则进栈,如果遇到相反字符在栈不为空的前提下出栈,并且判断读到的字符是否和出栈的字符匹配,匹配的话继续,否则直接结束。

     ② 有一点儿在遍历输入字符时,如果栈为空了,表明肯定不能匹配。

     ③ 如果输入的字符遍历完毕,但是栈不为空,表明‘[’,'{',‘(这些字符多,也肯定不匹配。

代码设计:

1 class Solution { 2     public boolean isValid(String s) { 3         // Note: The Solution object is instantiated only once and is reused by each test case. 4         if(s.length()%2==1) 5             return false;//如果是奇数,一定不匹配 6         Stack
stack=new Stack
(); 7 Character temp=null; 8 for(int i=0;i

2013-10-2402:16:14

转载于:https://www.cnblogs.com/zhaolizhen/p/ValidParentheses.html

你可能感兴趣的文章
上海访微软 详解Azure和S+S
查看>>
跨国巨头猛攻语音识别技术 让电脑听懂人们说话
查看>>
moosefs即将发布新版
查看>>
SmartGit 试用过期
查看>>
python 测试驱动开发的简单例子
查看>>
Aes 加密简单例子
查看>>
AE 线编辑
查看>>
软件设计之UML—UML的构成[上]
查看>>
[SPLEB]CodeSmith原理剖析(1)
查看>>
如何使用AdMob中介界面?
查看>>
分享一个shell脚本:通过Jumper机器来创建Jumper和target机器账号
查看>>
UITableViewCell分割线不是左对齐的问题
查看>>
CentOS7 编译安装PHP7
查看>>
MySQL常见错误代码及代码说明
查看>>
Cglib动态代理基础使用
查看>>
技术人员,为什么会苦逼
查看>>
使用126邮箱发送邮件的python脚本
查看>>
Maven
查看>>
缓存系统在游戏业务中的特异性
查看>>
Ngrok搭建自己的内网穿透
查看>>