欢迎访问我的个人网站==》 jiashubing.cn

对如下字符串(234453)[234]{2324}分析它的括号使用是否正确,括号匹配(Java实现)

我的一种思路是递归:

private static String s = "(2344[)]53[234]{2324}";
private static boolean f(int x, int y) {
    for (int i = x; i < s.length(); i++) {
        if (s.charAt(i) == '(') {
            return f(i + 1, 1);
        } else if (s.charAt(i) == '[') {
            return f(i + 1, 2);
        } else if (s.charAt(i) == '{') {
            return f(i + 1, 3);
        } else if (s.charAt(i) == ')') {
            return y == 1;
        } else if (s.charAt(i) == ']') {
            return y == 2;
        } else if (s.charAt(i) == '}') {
            return y == 3;
        }
    }
    return true;
}
public static void main(String[] args) {
       System.out.println(f(0,0));
}

 

posted @ 2017-10-18 13:54  贾树丙  阅读(458)  评论(0编辑  收藏  举报