【LeetCode Easy】020 Valid Parentheses

栏目: 编程工具 · 发布时间: 6年前

内容简介:“()” "[]" "{}"三种括号匹配问题,判断参数字符串是否满足匹配要求如:“({[]})” true “[{})” falseNote:空串为true

Easy 020 Valid Parentheses

Description:

“()” "[]" "{}"三种括号匹配问题,判断参数字符串是否满足匹配要求

如:“({[]})” true “[{})” false

Note:空串为true

My Solution:

    • 括号匹配问题是栈的典型应用,遇到左括号,入栈,遇到右括号,看栈顶是否是相应的左括号,若不是,则false
    • 时间复杂度O(n)
    • 代码如下:
    • public boolean isValid(String s) {
           if(s.length()==0){
               return true;
           }
           Stack<Character> stack = new Stack<>();
           for(char c:s.toCharArray()){
               if(c == '(' || c == '{' || c == '['){
                   stack.push(c);
               }else if(stack.size()==0){
                   return false;
               }
               else if(c == ')' && stack.peek() == '('){
                   stack.pop();
               }else if(c == ']' && stack.peek() == '['){
                   stack.pop();
               }else if(c == '}' && stack.peek() == '{'){
                   stack.pop();
               }else
                   return false;
           }
           if(stack.size() == 0){
               return true;
           }
           return false;
       }

Fast Solution:


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java Web开发实战经典(基础篇)

Java Web开发实战经典(基础篇)

李兴华、王月清 / 清华大学出版社 / 2010-8 / 69.80元

本书用通俗易懂的语言和丰富多彩的实例,通过对Ajax、JavaScript、HTML等Web系统开发技术基础知识的讲解,并结合MVC设计模式的理念,详细讲述了使用JSP及Struts框架进行Web系统开发的相关技术。 全书分4部分共17章,内容包括Java Web开发简介,HTML、JavaScript简介,XML简介,Tomcat服务器的安装及配置,JSP基础语法,JSP内置对象,Java......一起来看看 《Java Web开发实战经典(基础篇)》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试