用两个栈实现,用例过了,不知道对不对,没时间交上去呜呜呜 static String solution(String input) {         Stack<Character> stack1 = new Stack<>();         Stack<Character> stack2 = new Stack<>();         String s = "";         char[] chars = input.toCharArray();         for (int i = 0; i < chars.length; i++) {             if (chars[i] >= '1' && chars[i] <= '9') {                     stack2.push(chars[i]);             } else {                 if (stack1.empty()) {                     stack1.push(chars[i]);                 } else {                     if (chars[i] == '(') {                         stack1.push(chars[i]);                     } else if (chars[i] == ')') {                         stack1.pop();                         if (!stack2.empty())                             s +=  stack2.pop();                     } else {                         if (!stack2.empty())                             s += stack2.pop();                     }                 }             }         }         return s;     }
点赞 9

相关推荐

牛客网
牛客企业服务