无法进行所有重复的问题

时间:2019-04-04 14:36:54

标签: linked-list

问题

我当前的实现当前无法输出我希望获得的所有结果。我当前的代码,预期的和实际的结果可以在下面看到。

任务

在确定括号是正确还是错误的过程中,打印相应括号的索引并保留表格的形式而不检查所有字符。

  

args [0] =(3x((4 + 2)/ 2)-1)x(5-3)

        LinkedStack stack = new LinkedStack();
        LinkedStack stack2 = new LinkedStack();
        LinkedStack stack3 = new LinkedStack();

        for (int i = 0; i < args[0].length(); i++) {
            stack.push(args[0].charAt(i));
        }

        for (int i = 0; i < stack.size(); i++) {
            if (stack.peek() == (Object) '(') {
                stack2.push(stack.size() - 1);
                stack.pop();
            } else if (stack.peek() == (Object) ')') {
                stack3.push(stack.size() - 1);
                stack.pop();
            } else {
                stack.pop();
            }
            if (stack2.size() == 1 && stack3.size() != 0) {
                System.out.println(stack2.pop() + "," + stack3.pop());
            }
        }
        if ((stack.size() == 0) && (stack2.size() != 0 || stack3.size() != 0)) {
            System.out.println("The parentheses are wrong.");

        } else {
            System.out.println("The parentheses are correct.");

        }

预期结果:

  

16,20

     

0,14

     

3,11

     

4,8

     

括号是正确的。

实际结果:

  

16,20

     

括号是正确的。

0 个答案:

没有答案