题解 | #完成括号匹配#

完成括号匹配

https://www.nowcoder.com/practice/fe8d6a1b88af4ba6b4dbb10972059040

import java.util.Scanner;
import java.util.Stack;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        Stack<Character> stack = new Stack<Character>();
        for (char c : s.toCharArray()
            ) {
            if (c == ']' && !stack.isEmpty() && stack.peek() == '[') {
                stack.pop();
            } else {
                stack.push(c);
            }
        }
        int l = 0;
        int r = 0;
        while (!stack.isEmpty()) {
            if (stack.peek() == '[') {
                l ++;
            } else r ++;
            stack.pop();
        }
        for (int i = 0; i < r; i++) {
            System.out.print("[");
        }
        System.out.print(s);
        for (int i = 0; i < l; i++) {
            System.out.print("]");
        }
    }
}

这类符号匹配问题还是用栈进行匹配比较好使

#如何一边实习一边秋招#
全部评论
点赞 回复 分享
发布于 2024-11-26 15:26 湖南

相关推荐

风中翠竹:真的真的真的没有kpi。。。面试官是没有任何kpi的,捞是真的想试试看这个行不行,碰碰运气,或者是面试官比较闲现在,没事捞个人看看。kpi算HR那边,但是只有你入职了,kpi才作数,面试是没有的。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务