首页 > 其他 > 详细

括号匹配(栈的应用)

时间:2014-05-07 00:19:25      阅读:354      评论:0      收藏:0      [点我收藏+]
bubuko.com,布布扣
#include <iostream>
#include <stack>
#include <string>
using namespace std;

int main()
{
    int n;cin>>n;
    while(n--){
        stack<char> s;
        string str;cin>>str;
        for(int i=0;i!=str.length();i++){
            if(s.empty()) s.push(str[i]);
            else{
                if(s.top()==(){
                    if(str[i]==)) s.pop();
                    else s.push(str[i]);}
                else if(s.top()==[){
                    if(str[i]==]) s.pop();
                    else s.push(str[i]);
                }
                else {s.push(str[i]);}
            }
        }
        if(s.empty()) cout<<"Yes"<<endl;
        else cout<<"No"<<endl;

    }
    return 0;
}
bubuko.com,布布扣

 

括号匹配(栈的应用),布布扣,bubuko.com

括号匹配(栈的应用)

原文:http://www.cnblogs.com/xzenith/p/3712530.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!