美文网首页
【算法题】2696. 删除子串后的字符串最小长度

【算法题】2696. 删除子串后的字符串最小长度

作者: 程序员小2 | 来源:发表于2023-06-21 16:29 被阅读0次

题目:

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

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

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

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

示例 1:

输入:s = "ABFCACDB"
输出:2
解释:你可以执行下述操作:

  • 从 "ABFCACDB" 中删除子串 "AB",得到 s = "FCACDB" 。
  • 从 "FCACDB" 中删除子串 "CD",得到 s = "FCAB" 。
  • 从 "FCAB" 中删除子串 "AB",得到 s = "FC" 。
    最终字符串的长度为 2 。
    可以证明 2 是可获得的最小长度。
    示例 2:

输入:s = "ACBBD"
输出:5
解释:无法执行操作,字符串长度不变。

提示:

1 <= s.length <= 100
s 仅由大写英文字母组成

java代码:

class Solution {
    public int minLength(String s) {
      char[] stack = new char[s.length()];
int top = -1;
for (char c : s.toCharArray()) {
    if (top >= 0 && (c == 'B' && stack[top] == 'A' || c == 'D' && stack[top] == 'C'))
        top--;
    else
        stack[++top] = c;
}
return top + 1;
    }
}

相关文章

  • 数据结构与算法-- 暴力法查找子字符串

    数据结构与算法--子字符串查找 字符串的一种基本操作就是子字符串查找了,给定一段长度为N的文本字符串(主串)和长度...

  • 字符串匹配

    朴素字符串匹配算法 这里假设text是一个文本,长度为n。pattern是需要匹配的子串,长度为m。 朴素字符串匹...

  • 最长回文子串问题—Manacher算法

    最长回文串问题是一个经典的算法题。 0. 问题定义 最长回文子串问题:给定一个字符串,求它的最长回文子串长度。如果...

  • 前端分享会--从一道算法题目开始的学习

    算法题 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 理解 所谓回文,...

  • 字符串匹配 —— KMP算法

    基础设置 字符串相关操作 KMP 模式匹配算法 通过计算返回子串T的next数组字符串T[0]中是存储的字符串长度...

  • 最长回文子串

    最长回文子串——Manacher 算法 1. 问题定义 最长回文字符串问题:给定一个字符串,求它的最长回文子串长度...

  • 2019-05-08溢出省略、

    算法4:截断字符串:字符串指定长度溢出替换为省略号 算法5:指定长度分割字符串: 以下涉及的方法: slice(s...

  • jq的字符串操作

    字符串拼接 字符串长度 子串 split trim 子串替换

  • shell字符串操作

    1.1 按照下标截取 1.2 字符串长度 1.3 字符串删除 1.4 字符串替换

  • 最长无重复字符子串练习题

    题目 对于一个字符串,请设计一个高效算法,找到字符串的最长无重复字符的子串长度。 给定一个字符串A及它的长度n,请...

网友评论

      本文标题:【算法题】2696. 删除子串后的字符串最小长度

      本文链接:https://www.haomeiwen.com/subject/xxxpydtx.html