使用栈判断括号匹配
来源:互联网 发布:怎么在淘宝里买电棍 编辑:程序博客网 时间:2024/05/22 14:45
判读括号是否匹配的方法比较简单,假如给定一系列的括号,判断是否全部都匹配我们肯定是将能匹配的括号全部删除,如果最后没有剩下任何括号那么肯定就是匹配了;如有剩下的左括号或者右括号说明不匹配。
详见代码描述:
#include <iostream>#include <stack>using namespace std;int main(int argc, char const *argv[]){ string leftparenthese = "([{<";//保存左括号列表 string rightparenthese = ")]}>";//保存右括号列表 stack<char> parenthese; string str; cin >> str; int flag = -1; for (int i = 0; i < str.length(); i++) { if (leftparenthese.find(str[i]) != string::npos)//左括号直接入栈 parenthese.push(str[i]); else if (rightparenthese.find(str[i]) != string::npos)//如果遇到右括号 { //检查是否与栈顶栈顶符号匹配 if (!parenthese.empty() && leftparenthese.find(parenthese.top()) == rightparenthese.find(str[i])) parenthese.pop();//如果匹配则删除栈顶符号 else//不匹配则标记并退出循序 { flag = i; break; } } } //根据比较结果判定是否匹配 if (!parenthese.empty() || flag >= 0) cout << "unmatch" << endl; else cout << "perfect matched" << endl; return 0;}
0 0
- 使用栈判断括号匹配
- Matlab 使用栈判断括号是否匹配
- 使用纯递归判断括号是否匹配
- 利用栈判断括号的匹配性
- 基于栈判断括号是否匹配
- 数据结构--利用栈判断括号匹配
- 利用栈判断括号是否匹配
- 利用栈判断括号是否匹配
- 栈的应用----判断括号是否匹配
- 判断括号是否匹配
- 判断括号是否匹配
- hdu4915 判断括号匹配
- 括号匹配判断
- 括号匹配判断
- 判断括号是否匹配
- 判断括号匹配程序
- 判断括号是否匹配
- 使用栈实现括号匹配
- Android XML解析详解
- C++虚函数:虚指针、虚表、虚函数入口地址
- Gridview绑定数据库的字段,根据条件字段颜色改变
- 芯片IC附近为什么都放0.1uF的电容?这样做正确吗?有什么依据吗?
- Android基础知识
- 使用栈判断括号匹配
- HDU1159 && POJ1458 Common Subsequence (LCS模版题)
- poj 1056 IMMEDIATE DECODABILITY 字典树
- poj 2001 Shortest Prefixes(字典树 )
- 9:Palindrome Number【数学】
- LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- Linux C 程序崩溃是如何采取挽救措施
- 解决eclipse连接不到genymotion的问题
- HDU2093 考试排名 【水题】