NumberOfBalanced"()"InAnExpression


public class Main {
    
    //  Q: Check for balanced parentheses in an expression
    // input s: (()())
    // Output: 3
  
    public static void main(String[] args) {
        String s="(()())";
        System.out.println(checkbalance(s));
    }

  public static int checkbalance(String s){
      Stack<Character> stack = new Stack<>();
      int open=0;
      int close=0;
      for(Character c: s.toCharArray()){
          if(c=='('){
         stack.push(c);
              open++;
          }else if(c==')'){
              if(!stack.isEmpty()){
                  //拿下来
            stack.pop();
              close++;
              }
          }
      }
      if(open==close){
        return open;
      }else{
        return -1;
      }
      
      
  }
        
        
        
        
        
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。