码迷,mamicode.com
首页 > 其他好文 > 详细

Valid Parentheses

时间:2015-10-30 16:46:19      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:

Given a string containing just the characters ‘(‘, ‘)‘, ‘{‘, ‘}‘, ‘[‘ and ‘]‘, determine if the input string is valid.

The brackets must close in the correct order, "()" and "()[]{}" are all valid but "(]" and "([)]" are not.

bool isValid(char* s) {
    int size = strlen(s);
    char buf[size];
    int i = 0;
    while(*s)
    {
        if(*s == ( || *s == [ || *s == {)
        {
            buf[i] = *s;
            i++;
        }
        if(*s == ))
        {
            if(buf[i - 1] == ()
                i--;
            else
                return false;
        }
        if(*s == ])
        {
            if(buf[i - 1] == [)
                i--;
            else
                return false;
        }
        if(*s == })
        {
            if(buf[i - 1] == {)
                i--;
            else
                return false;
        }
        s++;
    }
    if(i == 0)
        return true;
    else
        return false;
}
  • 使用栈

Valid Parentheses

标签:

原文地址:http://www.cnblogs.com/dylqt/p/4923607.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!