zoukankan      html  css  js  c++  java
  • 有效括号

    class Solution {
    public:
        bool isValid(string s) {
            int flag=1;         //标志位
            int len=s.size();
            if(len==0)
            {
                return true;
            }                           //判断输入是否为空
            char str[len];
            int top=0;          //栈的顶部位置
            for(int j=0;j<len;j++)
            {
                if(s[j]=='(')
                {
                    str[top]='(';           //入栈
                    top++;
                }
                if(s[j]=='[')
                {
                    str[top]='[';               //入栈
                    top++;
                }
                if(s[j]=='{')
                {
                    str[top]='{';               //入栈
                    top++;
                }
                if(s[j]==')')
                {
                    if(top<1)
                    {
                        return false;                 //出栈前要检验
                    }
                    top--;
                    if(str[top]!='(')
                    {
                        flag=0;
                        break;
                    }
                }
                if(s[j]==']')
                {
                    if(top<1)
                    {
                        return false;               //出栈前要检验
                    }
                    top--;      
                    if(str[top]!='[')
                    {
                        flag=0;
                        break;
                    }
                }
                if(s[j]=='}')
                {
                    if(top<1)
                    {
                        return false;                   //出栈前要检验
                    }
                    top--;
                    if(str[top]!='{')
                    {
                        flag=0;
                        break;
                    }
                }
            }
            if(top==0&&flag==1)                 //判断标志位,判断是否在栈底(栈内是否为空)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
    };

  • 相关阅读:
    使用def文件简化dll导出
    ASP.NET Core MVC 之过滤器(Filter)
    ASP.NET Core 中间件 中间件(Middleware)和过滤器(Filter)的区别
    drf-apiview解读系列二
    干货分享,40个photoshop技能送给你!
    冒泡排序 深度优化
    数据结构与算法_14 _ 排序优化:如何实现一个通用的、高性能的排序函数
    数据结构与算法_12 _ 排序(下):如何用快排思想在O(n)内查找第K大元素
    数据结构与算法_13 _ 线性排序:如何根据年龄给100万用户数据排序
    数据结构与算法_11 _ 排序(上):为什么插入排序比冒泡排序更受欢迎
  • 原文地址:https://www.cnblogs.com/wzhtql/p/10225681.html
Copyright © 2011-2022 走看看