验证括号是否匹配
2014-06-25 10:25
260 查看
3、输入一串字符串,其中有普通的字符与括号组成(包括‘(’、‘)’、‘[’,']'),要求验证括号是否匹配,如果匹配则输出0、否则输出1.
Smpleinput:dfa(sdf)df[dfds(dfd)] Smple outPut:0思路:最简单的数据结构,栈的问题,遇到左括号就入栈,遇到右括号就比较,如果匹配就继续,如果不匹配就结束,返回1.
#include<iostream> #include<stack> #include<string> using namespace std; bool pipei(const string &);//处理函数 int main() { string str;//用string 比char数组简单一些 cin>>str; cout<<pipei(str); } bool pipei(const string & str) { stack<char> ss; char c; for(int i = 0 ;i< str.size(); i++) //具体处理的思路 { if(str[i] == '(' ||str[i] == '[' ) ss.push(str[i]); else if(str[i] == ']' ){ c = ss.top(); if (c != '[') return true; else ss.pop(); } else if(str[i] == ')' ){ c = ss.top(); if (c != '(') return true; else ss.pop(); } } if (ss.empty()) //判断栈是否为空 return false; else return true; }
相关文章推荐
- Python 使用堆栈验证C文件括号是否匹配
- 验证花括号是否匹配
- 验证括号是否匹配
- 如何验证代码中文件中的括号是否匹配
- 输入一串字符串,其中有普通的字符与括号组成(包括‘(’、‘)’、‘[’,']'),要求验证括号是否匹配,如果匹配则输出0、否则输出1.
- 栈验证表达式中的括号是否匹配
- 检查一个算术表达式中的括号是否匹配
- 【C语言】判断花括号{}是否匹配
- Leetcode014--括号验证匹配
- 判断一个括号字符串是否匹配
- 简单判断表达式括号是否匹配
- 栈的应用----判断括号是否匹配
- 基于栈判断括号是否匹配
- 判断花括号是否匹配
- 判断表达式中的括号是否匹配
- 输入一串字符查看括号是否匹配
- 华为2014机考题_判断if括号是否匹配_堆栈
- 用堆栈实现给定数学表达式括号是否匹配 推荐
- 利用栈判断输入的表达式中的括号是否匹配(假设只含有左、右括号)
- LeetCode Valid Parentheses(判断括号是否匹配)