zoukankan      html  css  js  c++  java
  • Valid Parentheses

    用一个栈存储字符串中的括号,每次读新的字符的时候,如果在栈顶发现有与它相匹配的括号,则从栈顶弹出,否则入栈。一次遍历之后,如果发现栈不为空,说明不匹配。

     1  bool isValid(string s) {
     2         // Start typing your C/C++ solution below
     3         // DO NOT write int main() function
     4         stack<char> aStack;
     5        int i, l = s.length();
     6         for(i = 0; i < l; i++){
     7             if(s[i] == '(' || s[i] == '[' || s[i] == '{')
     8                 aStack.push(s[i]);
     9             else if(s[i] == ')'){
    10                 if(!aStack.empty() && aStack.top() == '(')
    11                     aStack.pop();
    12                 else {
    13                     aStack.push(s[i]);
    14                     break;
    15                 }
    16             }
    17             else if(s[i] == ']'){
    18                 if(!aStack.empty() && aStack.top() == '[')
    19                     aStack.pop();
    20                 else {
    21                     aStack.push(s[i]);
    22                     break;
    23                 }
    24             }
    25             else if(s[i] == '}'){
    26                 if(!aStack.empty() && aStack.top() == '{')
    27                     aStack.pop();
    28                 else {
    29                     aStack.push(s[i]);
    30                     break;
    31                 }
    32             }
    33         }
    34         if(aStack.empty())
    35             return true;
    36         return false;
    37     }
  • 相关阅读:
    c# 字符串中某个词出现的次数及索引
    c# 冒泡排序
    WCF 高级知识
    Web Api基础知识
    Web Services基础知识
    WCF Demo
    IIS部署WCF常见错误
    IIS部署WCF
    IIS部署WCF错误
    WCF基础知识
  • 原文地址:https://www.cnblogs.com/waruzhi/p/3347748.html
Copyright © 2011-2022 走看看