LeetCode---Valid Parentheses
来源:互联网 发布:电脑屏幕录像软件2017 编辑:程序博客网 时间:2024/05/17 22:21
题目大意:给出一个由括号组成的字符串,判断该字符串是否有效。有效字符串是每种括号必须正确匹配:(),[ ] , { } 不正确的匹配:(],{ ), ((((
算法思想:扫描字符创,如果遇到左括号则压入栈,如果遇到右括号则和栈顶元素进行匹配,如果匹配正确则将栈顶元素出栈,如果不匹配则放会False。当字符串扫描完毕后,如果栈为空则返回TRUE,否则返回False。
代码如下:
class Solution {public: bool isValid(string s) { stack<char> z; for(int i=0;i<s.size();i++){ if(s[i]=='('||s[i]=='{'||s[i]=='[') z.push(s[i]); //cout<<"test:"<<z.size()<<endl; if(s[i]==')'||s[i]=='}'||s[i]==']') if(z.empty()) return false; else{ //cout<<"Hello"<<s[i]<<endl; switch(s[i]){ case ')': if(z.top()=='('){ z.pop();} else return false; break; case ']': if(z.top()=='['){ z.pop();} else return false; break; case '}': if(z.top()=='{'){ z.pop();} else return false; break; default : return false; } } } if(z.empty()) return true; else return false; }};
0 0
- LeetCode: Valid Parentheses
- LeetCode: Longest Valid Parentheses
- LeetCode: Valid Parentheses
- LeetCode Longest Valid Parentheses
- [Leetcode] Valid Parentheses
- LeetCode: Longest Valid Parentheses
- [Leetcode] Longest Valid Parentheses
- LeetCode : Valid Parentheses
- [leetcode]longest Valid Parentheses(!!)
- Leetcode: Valid Parentheses
- leetcode 52: valid parentheses
- [Leetcode] Longest Valid Parentheses
- leetcode Longest Valid Parentheses
- 【leetcode】Valid Parentheses
- 【leetcode】Longest Valid Parentheses
- [LeetCode]Longest Valid Parentheses
- [LeetCode]Valid Parentheses
- LeetCode-Valid Parentheses
- android studio设置代理下载SDK
- LINUX命令行快捷键
- 将浮点数转成人民币读法字符串
- PS怎样不通过图层面板,而通过鼠标点击图片直接切换图层
- 第一篇文章
- LeetCode---Valid Parentheses
- 黑马程序员-80-BufferedWriter
- 服务器使用 ocx (ocx增加安全属性接口)
- POJ 1256 Anagram【生成有重集的全排列2.0】
- A *a=new B();
- HDU 2196 Computer(树的直径)
- Android使用Fragment实现TabHost效果
- k-MEANS算法
- 泛型