【C++】括号匹配

#include<iostream>
#include<cstring>
#include<cstdlib>
#include<queue>
using namespace std;
const int M=; char a[M]; bool match()
{
queue<char> q;
int i=;
while(a[i]!='\0')
{
if(a[i]=='(')
{
q.push(a[i]);
}
if(a[i]==')')
{
if(q.empty())
return false;
else
q.pop();
}
i++;
}
if(!q.empty())
return false;
else
return true;
} int main()
{
memset(a,'\0',sizeof(a));
while(scanf("%s",a))
{
if(match())
cout<<<<endl;
else
cout<<<<endl;
memset(a,'\0',sizeof(a));
} return ;
}

经典的简单问题,网上的代码大都是自己实现辅助队列,算法描述并不直观,所以我用了一下STL类库,让代码简洁明了一点。

【C++】括号匹配

tz@HZAU

2019/3/15

上一篇:解决git Push时请求username和password,而不是ssh-key验证


下一篇:poj3253 Fence Repair