当前位置: 首页 > news >正文

东莞市住房和城乡建设厅网站百度竞价返点开户

东莞市住房和城乡建设厅网站,百度竞价返点开户,怎么注册公司企业微信,上海珍岛做网站怎么样LeetCode 1653. 使字符串平衡的最少删除次数 难度:middle\color{orange}{middle}middle Rating:1794\color{orange}{1794}1794 题目描述 给你一个字符串 sss ,它仅包含字符 ′a′a′a′ 和 ′b′b′b′​​​​ 。 你可以删除 sss 中任意…

LeetCode 1653. 使字符串平衡的最少删除次数

难度:middle\color{orange}{middle}middle

Rating:1794\color{orange}{1794}1794


题目描述

给你一个字符串 sss ,它仅包含字符 ′a′'a'a′b′'b'b​​​​ 。

你可以删除 sss 中任意数目的字符,使得 sss 平衡 。当不存在下标对 (i,j)(i,j)(i,j) 满足 i<ji < ji<j ,且 s[i]=′b′s[i] = 'b's[i]=b 的同时 s[j]=′a′s[j]= 'a's[j]=a ,此时认为 sss平衡 的。

请你返回使 sss 平衡最少 删除次数。

示例 1:

输入:s = "aababbab"
输出:2
解释:你可以选择以下任意一种方案:
下标从 0 开始,删除第 2 和第 6 个字符("aababbab" -> "aaabbb"),
下标从 0 开始,删除第 3 和第 6 个字符("aababbab" -> "aabbbb")。

示例 2:

输入:s = "bbaaaaabb"
输出:2
解释:唯一的最优解是删除最前面两个字符。

提示:

  • 1<=s.length<=1051 <= s.length <= 10^{5}1<=s.length<=105
  • s[i]s[i]s[i] 要么是 ′a′'a'a 要么是 ′b′'b'b​ 。​

算法

(枚举)

通过删除部分字符串,使得字符串达到下列三种情况之一,即为平衡状态:

  • 字符串全为 “a”;
  • 字符串全为 “b”;
  • 字符串既有 “a” 也有 “b”,且所有 “a” 都在所有 “b” 左侧。

为了达到第 1 种情况,最少需要删除所有的 “b”。

为了达到第 2 种情况,最少需要删除所有的 “a”。

而第 3 种情况,可以在原字符串相邻的两个字符之间划一条间隔,删除间隔左侧所有的 “b” 和间隔右侧所有的 “a” 即可达到。用 leftb 表示间隔左侧的 “b” 的数目,righta 表示间隔左侧的 “a” 的数目,leftb+righta 即为当前划分的间隔下最少需要删除的字符数。这样的间隔一共有 n−1 种,其中 n 是 s 的长度。遍历字符串 s,即可以遍历 n−1 种间隔,同时更新 leftb 和 righta 的数目。而上文讨论的前两种情况,其实就是间隔位于首字符前和末字符后的两种特殊情况,可以加入第 3 种情况一并计算。

复杂度分析

  • 时间复杂度O(n)O(n)O(n),其中 nnn 是链表的长度。需要遍历链表一次

  • 空间复杂度 : O(1)O(1)O(1)

C++ 代码

class Solution {
public:int minimumDeletions(string s) {int righta = 0;for (int i = 0; i < s.size(); i ++) {if (s[i] == 'a') righta ++;}int res = righta;int leftb = 0;for (int i = 0; i < s.size(); i ++) {if (s[i] == 'a')righta --;else leftb ++;res = min(res, leftb + righta);}return res;}
};

http://www.hengruixuexiao.com/news/20457.html

相关文章:

  • 云南网站推广seo网站优化多少钱
  • 大宁网站制作百度经验首页登录官网
  • 创业做网站还是软件好网站404页面怎么做
  • 教人做衣服的网站搜索营销
  • 电商数据网站有哪些灰色词网站seo
  • 网站开发要源码多少钱seo优化推广软件
  • wordpress更改后台域名后无法访问网站优化推广培训
  • 地方网站 域名选择上海网站快速优化排名
  • 吉林网络公司哪家好seo自动优化软件
  • 山东网站建设哪家权威百度推广客服电话
  • 建设工程管理是干嘛的徐州seo企业
  • 深圳厉害的室内设计公司seo资料网
  • 设计美观网站有哪些seo是什么部门
  • 饿了么如何做网站推广注册城乡规划师好考吗
  • php做的卖水果网站有哪些微信群推广平台有哪些
  • 如何攻击织梦做的网站建站网站
  • 有域名了如何自己做网站深圳网站建设优化
  • 社区团购系统开发搜索引擎关键词优化
  • 怎么做自己的百度网站郑州seo技术
  • 东莞个人免费建网站360搜索推广官网
  • wordpress 禁止另存为seo运营是什么意思
  • 做网站卖机器怎么弄运营推广seo招聘
  • 简单的网站开发的软件有哪些seo外包公司兴田德润
  • 做网站要会写代码吗长沙企业网站建设报价
  • 建筑设计网站排行榜友情链接代码美化
  • 宁夏建设监督网站google seo 优化
  • 手机网站大全网址大全牛排seo系统
  • 重庆的平台公司seo关键词排名优化方案
  • 平面设计论坛有哪些汕头seo代理商
  • 网站的免费空间是什么如何让百度收录网站