`
cozilla
  • 浏览: 94003 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

[LeetCode] Valid Parentheses

 
阅读更多

 

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.

 

class Solution {
public:
    bool match(char a, char b) {
        if (a == '[' && b == ']') return true;
        if (a == '(' && b == ')') return true;
        if (a == '{' && b == '}') return true;
        return false;
    }
    
    bool isValid(string s) {
        int len = s.size();
        if (len % 2 == 1) return false;
        stack<char> r;
        int i = 0;
        r.push(s[i++]);
        while (i < len) {
            if (r.empty()) {
                r.push(s[i++]);
                continue;
            }
            if (match(r.top(), s[i])) {
                r.pop(); i++;
            } else {
                r.push(s[i++]);
            }
        }
        if (r.empty()) return true;
        else return false;
    }
};

 

 

分享到:
评论

相关推荐

    java-leetcode题解之Longest Valid Parentheses.java

    其中,“Longest Valid Parentheses”是一道在LeetCode上常见的算法题目,要求编写一个函数来找出输入字符串中有效的括号配对的最大长度。 在Java中,解决这类问题通常需要对字符串进行遍历,并且利用栈、动态规划...

    LeetCode Valid Parenthese解决方案

    其中,“Valid Parentheses”是一道经典的字符串处理问题。这个题目要求我们编写一个函数,检查给定的字符串中括号的使用是否合法。具体来说,我们需要确保所有打开的括号都有对应的闭合括号,并且它们的顺序是正确...

    c语言-leetcode 0020-valid-parentheses.zip

    c c语言_leetcode 0020_valid_parentheses.zip

    java-leetcode题解之Maximum Nesting Depth of Two Valid Parentheses

    对于题目“Maximum Nesting Depth of Two Valid Parentheses”,我们可以将其理解为计算两个有效括号字符串中最深的嵌套深度。有效括号字符串通常指字符串仅由'('和')'构成,并且对于每个'(',都有一个相匹配的')'。...

    C语言-leetcode题解之32-longest-valid-parentheses.c

    今天,我们专注于题号为32的LeetCode题目“Longest Valid Parentheses”,即找出最长的有效括号匹配子串长度。 有效括号匹配是计算机科学中的经典问题,它要求识别并计算给定字符串中正确配对的括号数量。在编程...

    C语言-leetcode题解之20-valid-parentheses.c

    具体到文件标题中提到的“20-valid-parentheses.c”,这个文件应该是针对leetCode中第20号题目“有效的括号”的C语言实现。这道题目的核心要求是判断给定的字符串是否为有效的括号组合。有效的括号组合是指,对于每...

    leetcode2-valid_parentheses:代码挑战:有效括号

    leetcode 2 有效括号 给定一个只包含字符'(' , ')' , '{' , '}' , '['和']'的字符串,确定输入字符串是否有效。 输入字符串在以下情况下有效: * 左括号必须由相同类型的括号封闭。 * 左括号必须以正确的顺序关闭。 ...

    js-leetcode题解之20-valid-parentheses.js

    在LeetCode算法题目中,“20.有效的括号”是一道广泛讨论的问题,它要求编写一个函数来判断输入字符串中的括号是否合法。合法的括号需要满足如下条件:一对括号必须是闭合的,即第一个出现的左括号必须由相同类型的...

    js-leetcode题解之32-longest-valid-parentheses.js

    本文是一篇专注于解决LeetCode平台中JavaScript语言编写的“32-最长有效括号”问题的题解文章。在介绍解题思路和实现方法之前,先对这个问题进行详细阐述。问题要求编写一个函数,该函数能够找到给定字符串中合法的...

    程序员面试宝典LeetCode刷题手册

    第四章 Leetcode 题解 ...20. Valid Parentheses 21. Merge Two Sorted Lists 22. Generate Parentheses 23. Merge k Sorted Lists 24. Swap Nodes in Pairs 25. Reverse Nodes in k-Group 26. Remove Dupli

    LeetCode 刷题汇总1

    * 有效的括号(Valid Parentheses):判断括号是否有效。 * 生成括号(Generate Parentheses):生成所有可能的括号组合。 6. 字符串匹配: * 正则表达式匹配(Regular Expression Matching):实现正则表达式...

    颜色分类leetcode-leetcode-[removed]我对Leetcode问题的解决方案

    颜色分类leetcode My Leetcode Problems Solutions Using javascript(ES6) 1 Two Sum 两数之和 5 Longest Palindromic Substring 最长回文子串 7 Reverse Integer 整数反转 9 Palindrome Number 回文数 11 Container...

    LeetCode最全代码

    # [LeetCode](https://leetcode.com/problemset/algorithms/) ![Language](https://img.shields.io/badge/language-Python%20%2F%20C++%2011-orange.svg) [![License]...

    LeetCode题解(java语言实现).pdf

    * Valid Parentheses:该题目要求检查括号是否匹配,实现方法使用了栈的数据结构。 * Implement strStr():该题目要求实现字符串查找算法,实现方法使用了Knuth-Morris-Pratt算法。 四、搜索和排序 * Search ...

    Leetcode book刷题必备

    41. Valid Parentheses:验证括号的有效性。 【动态规划】 42. Climbing Stairs:计算爬楼梯的不同方法数。 43. Unique Paths:机器人在一个 m x n 的网格中从左上角移动到右下角,有多少不同的路径。 44. Unique ...

    LeetCode各公司题目合集

    - Valid Parentheses:这是一个用来检测字符串中括号是否有效匹配的问题,可以用栈(Stack)数据结构来解决,属于基础的算法题目。 - Two Sum II - Input array is sorted:与前一个Two Sum题目的不同之处在于,本题...

    javalruleetcode-LeetCode::lollipop:个人LeetCode习题解答仓库-多语言

    java lru leetcode :ice_cream: LeetCode ...Parentheses 26 Remove Duplicates from Sorted Array 48 Rotate Image 53 Maximum Subarray 55 Jump Game 56 Merge Intervals 64 Minimum Path Sum 73

    Leetcode扑克-leetcode:Leetcode算法实践

    Parentheses 有效的括号 Stack / 栈 用栈实现配对 Daily Challenge 2020/08/14 28 Implement strStr() 实现 strStr() String / 字符串 循环遍历即可 algorithm-pattern: quick start 43 Multiply S

Global site tag (gtag.js) - Google Analytics