#Leetcode# 20.Valid Parentheses
https://leetcode.com/problems/valid-parentheses/description/
Given a string containing just the characters '('
, ')'
, '{'
, '}'
, '['
and ']'
, determine if the input string is valid.
An input string is valid if:
- Open brackets must be closed by the same type of brackets.
- Open brackets must be closed in the correct order.
Note that an empty string is also considered valid.
Example 1:
Input: "()" Output: true
Example 2:
Input: "()[]{}" Output: true
Example 3:
Input: "(]" Output: false
Example 4:
Input: "([)]" Output: false
Example 5:
Input: "{[]}" Output: true
代码:
class Solution { public: bool isValid(string s) { int len = s.length(); stack<char> Sta; for(int i = 0; i <len; i ++) { if(s[i] == '(' || s[i] == '[' || s[i] == '{') Sta.push(s[i]); else { if(Sta.empty()) return false; if(s[i] == ')' && Sta.top() != '(') return false; if(s[i] == ']' && Sta.top() != '[') return false; if(s[i] == '}' && Sta.top() != '{') return false; Sta.pop(); } } if(Sta.empty()) return true; else return false; } };