2696. 删除子串后的字符串最小长度 --力扣 --JAVA

简介: 给你一个仅由 大写 英文字符组成的字符串 s 。你可以对此字符串执行一些操作,在每一步操作中,你可以从 s 中删除 任一个 "AB" 或 "CD" 子字符串。通过执行操作,删除所有 "AB" 和 "CD" 子串,返回可获得的最终字符串的 最小 可能长度。注意,删除子串后,重新连接出的字符串可能会产生新的 "AB" 或 "CD" 子串。

 题目

给你一个仅由 大写 英文字符组成的字符串 s

你可以对此字符串执行一些操作,在每一步操作中,你可以从 s 中删除 任一个"AB""CD" 子字符串。

通过执行操作,删除所有 "AB""CD" 子串,返回可获得的最终字符串的 最小 可能长度。

注意,删除子串后,重新连接出的字符串可能会产生新的 "AB""CD" 子串。

解题思路

    1. 因为不确定需要循环遍历几次,所以选择使用while来进行循环;
    2. 创建标志常量来表示循环状态是否结束;
    3. 利用字符串的replaceAll方法来替换字符串"AB"和"CD";
    4. 当字符串长度与替换前相同时则跳出循环。

    代码展示

    class Solution {
        public int minLength(String s) {
            boolean status = true;
            while (status) {
                int len = s.length();
                s = s.replaceAll("AB", "");
                s = s.replaceAll("CD", "");
                if(s.length() == len){
                    status = false;
                }
            }
            return s.length();
        }
    }

    image.gif


    目录
    相关文章
    |
    6天前
    |
    存储 安全 Java
    Java零基础-字符串详解
    【10月更文挑战第18天】Java零基础教学篇,手把手实践教学!
    89 60
    |
    22天前
    |
    Java 数据库
    案例一:去掉数据库某列中的所有英文,利用java正则表达式去做,核心:去掉字符串中的英文
    这篇文章介绍了如何使用Java正则表达式从数据库某列中去除所有英文字符。
    36 15
    |
    11天前
    |
    JavaScript
    力扣3333.找到初始输入字符串Ⅱ
    【10月更文挑战第9天】力扣3333.找到初始输入字符串Ⅱ
    27 1
    |
    25天前
    |
    C++
    Leetcode第43题(字符串相乘)
    本篇介绍了一种用C++实现的字符串表示的非负整数相乘的方法,通过逆向编号字符串,将乘法运算转化为二维数组的累加过程,最后处理进位并转换为字符串结果,解决了两个大数相乘的问题。
    22 9
    |
    25天前
    |
    Java
    JAVA易错点详解(数据类型转换、字符串与运算符)
    JAVA易错点详解(数据类型转换、字符串与运算符)
    43 4
    |
    2月前
    |
    Java 数据库
    java小工具util系列1:日期和字符串转换工具
    java小工具util系列1:日期和字符串转换工具
    49 3
    |
    25天前
    |
    算法 C++
    Leetcode第八题(字符串转换整数(atoi))
    这篇文章介绍了LeetCode上第8题“字符串转换整数(atoi)”的解题思路和C++的实现方法,包括处理前导空格、正负号、连续数字字符以及整数溢出的情况。
    15 0
    |
    25天前
    【LeetCode 22】459.重复的子字符串
    【LeetCode 22】459.重复的子字符串
    27 0
    |
    25天前
    【LeetCode 20】151.反转字符串里的单词
    【LeetCode 20】151.反转字符串里的单词
    17 0
    |
    25天前
    【LeetCode 19】541.反转字符串II
    【LeetCode 19】541.反转字符串II
    18 0