Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 字符串中的平衡圆括号_Java_String_Parentheses - Fatal编程技术网

Java 字符串中的平衡圆括号

Java 字符串中的平衡圆括号,java,string,parentheses,Java,String,Parentheses,我在hackerrank里玩,我试过一个关于平衡括号的问题 问题:给定一个由左括号和右括号组成的字符串,“('和')”,根据需要插入括号以平衡括号。确定必须插入的最小字符数。您只需要返回必须插入的括号数。此外,字符串将只包含括号(这就是为什么我没有专门检查右括号) 我的思维过程: 确定开括号和闭括号的数量。返回两者之间差值的绝对值。不幸的是,它失败了两个测试用例,我不知道为什么 我的解决方案 public static int getMin(String s) { // Write your c

我在hackerrank里玩,我试过一个关于平衡括号的问题

问题:给定一个由左括号和右括号组成的字符串,“('和')”,根据需要插入括号以平衡括号。确定必须插入的最小字符数。您只需要返回必须插入的括号数。此外,字符串将只包含括号(这就是为什么我没有专门检查右括号)

我的思维过程: 确定开括号和闭括号的数量。返回两者之间差值的绝对值。不幸的是,它失败了两个测试用例,我不知道为什么

我的解决方案

public static int getMin(String s) {
// Write your code here
    int leftPar = 0;
    int rightPar = 0;
    
    for (int i = 0; i < s.length(); i++) {
        if (s.charAt(i) == ')') {
            rightPar++;
        }            
        else {
            leftPar++;
        }
    }
    
    return Math.abs(rightPar - leftPar);

}

平衡不仅仅意味着相同的数字;他们需要匹配。考虑“”(“你的代码会假设这是“平衡的”),但它不是。这就是我所缺少的。非常感谢。“AZUR青蛙应该像编译器一样去吗?平衡不只是意味着相同的数目,它们需要匹配。考虑一下)(”你的代码会假设这是“平衡的”。,但它不是。这就是我所缺少的。非常感谢。@azurefrog我们应该像编译器那样去做吗?
public static int getMin(String s) {
// Write your code here
    int bal = 0;
    int ans = 0;
    for (int i = 0; i < s.length(); i++) {
        if (s.charAt(i) == '(') bal++;
        else bal--;
        
        if (bal == -1) {
            ans++;
            bal++;
        }
    }
    return bal + ans;

}
pars = "()))))))))))))))))))))))()()))()))))))))()))))))()))()))))(()))))))))))))()))))))(()))))))))()()))))))))))))()))))(())()))))))(()))))()))))))()))()())))())))))))))))()))())(()()())()()())))))()))))())()))()))))))))))))))()())))()))))()))))))()))())()))())))(()))()))))))))())))())))(())()))))()((()))))))((((()())())())(())))))())())))))))())))))()(()))))()))))())))))()())())()))()))))))))()))))))))))()))))())))))(((()))))()))((())))())))))))())))()()())())))))())))())())))))(())())))))))())))()()))))))))))))(())())())))((()))))))(())))()())))()))))(())))(())))))))))))))(())))(())()))))(()))())())))))))()())(()(())())))))))))))))))))))))))((()())))())))())))((()())))()))())()))))())()())))))))))))(()))))))))))))))()))))))()))))))))))))))))(()(()))(()))()))))))()))()()))))))))))()))())()))))())))()()()))()))))(())))))))))))))()()))))(())))()))))))()))()())()))())()())())))()()(()())))))()())))))))())))())))(())))())))))))()))))))))()((()(())))))))))(())))())))())))))))))()())))()))))))))("