leetcode 1750. 删除字符串两端相同字符后的最短长度

题目如下

数据范围

示例

复制代码
本题是普通的模拟题,只需要设置l r两个指针并且让两个指针不断向内遍历最后得到差值即可,不用真正修改字符串s。

通过代码

cpp 复制代码
class Solution {
public:
    int minimumLength(string s) {
        int l = 0,r = s.size() - 1;
        int n = r + 1;
        char t;
        if(r == 0)return 1;
        if(s[l] != s[r])return r + 1;
        t = s[0];
        while(true){
            while(true){
          
                if(l + 1 == r)return 0;
                if(s[l + 1] == t)l++;
                else break;
         
            }
              while(true){
                if(l + 1 == r)return 0;
                if(s[r - 1] == t)r--;
                else break;
             
            }

            if(s[l + 1] != s[r - 1])return r - l - 1;
            l++;r--;
            if(l == r)return 1;
            t = s[l];

        }
        return 0;//while 循环已经是全部情况了 其实程序走不到这里
    }
};
相关推荐
青山木4 分钟前
Hot 100 --- 轮转数组
java·数据结构·算法
徐小夕29 分钟前
Loop Engineering 深度解析与实战指南(全网最全)
前端·算法·github
凡人叶枫33 分钟前
Effective C++ 条款22:将成员变量声明为 private
linux·开发语言·c++
北域码匠1 小时前
SHA-1算法:安全哈希原理与应用解析
算法·c#·哈希算法
坚果派·白晓明2 小时前
【鸿蒙PC】SDL3 移植:AtomCode Skills 4 步速通多媒体库适配
c++·华为·ai编程·harmonyos·atomcode·c/c++三方库
手写码匠2 小时前
手写 GraphRAG:从零实现图增强检索增强生成系统
人工智能·深度学习·算法·aigc
BomanGe12 小时前
NSK重载高刚性滚珠丝杠技术详解
经验分享·算法·规格说明书
赴生-3 小时前
C++进阶 C++11(下)
开发语言·c++
有点。3 小时前
C++(贪心算法一)
c++·贪心算法
Matrix_113 小时前
手机里的计算摄影:广角形变校正算法
人工智能·算法·智能手机·计算摄影