会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132849个问题
Python 全系列/第二阶段:Python 深入与提高/模块 6242楼
JAVA 全系列/第五阶段:JavaWeb开发/Web实战案例 6243楼
JAVA 全系列/第六阶段:项目管理与SSM框架/SpringMVC旧 6245楼
软件测试 全系列/第四阶段:功能测试与项目实战/测试需求分析与测试用例设计 6246楼
JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 6249楼
WEB前端全系列/第十九阶段:Vue2知识体系(旧)/可复用性 & 组合 6250楼
JAVA 全系列/第一阶段:JAVA 快速入门/面向对象详解和JVM底层内存分析 6251楼
JAVA 全系列/第三阶段:数据库编程/SQL 语言 6252楼
JAVA 全系列/第五阶段:JavaWeb开发/Servlet技术详解(旧) 6254楼

package collection.stu.com;

import java.util.Stack;

/**
 * 测试Stack,判断一个字符串是否对称
 * 假设修正法;
 * */
public class StackTest01 {
    public static void main(String[] args) {
        String str1="(({{[[]]}})){";
        String str2="(({{[[[]]}}))";
        String str3="([{}])";
        StackTest01.getString(str1);
        StackTest01.getString(str2);
        StackTest01.getString(str3);
    }
    public static void getString(String str1){
        boolean flag=true;
        Stack<String> stack=new Stack<>();
        for (int i=0;i<str1.length();i++){
            char c1=str1.charAt(i);
            if (c1=='('){
                stack.push(")");
            }
            if (c1=='{'){
                stack.push("}");
            }
            if (c1=='['){
                stack.push("]");
            }
            if (c1==')'||c1=='}'||c1==']'){
                if (stack.empty()){
                    flag=false;
                   break;
                }
                String str2=stack.pop();
                if (str2.charAt(0)!=c1){
                    flag=false;
                    break;
                }
            }
            if (!stack.empty()){
                flag=false;
                break;
            }
        }
     System.out.println(flag);
    }
}

false

false

false

全是false,最后一个应该是true,老师麻烦看看;

JAVA 全系列/第二阶段:JAVA 基础深化和提高/容器(旧) 6255楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637