LeetCode 1876. 长度为三且各字符不同的子字符串

解题思路

滑动窗口的经典题型,直接套模板就行了。

相关代码

复制代码
class Solution {
    public int countGoodSubstrings(String s) {
        char c[] = s.toCharArray();
        int hash[] = new int[26];
        int k=0;
        for(int i=0,j=0,cnt=0;i<c.length;i++){
            hash[c[i]-'a']++;
            if(hash[c[i]-'a']==1) cnt++;
            if(i-j+1>3){
                if(hash[c[j]-'a']==1) cnt--;
                hash[c[j]-'a']--;
                j++;
            }
            if(i>=3-1&&cnt==3) k++; 
        }
        return k;
    }
}
相关推荐
xdlka38 分钟前
C++初学者4——标准数据类型
开发语言·c++·算法
go546315846543 分钟前
大规模矩阵构建与高级算法应用
线性代数·算法·矩阵
向左转, 向右走ˉ1 小时前
为什么分类任务偏爱交叉熵?MSE 为何折戟?
人工智能·深度学习·算法·机器学习·分类·数据挖掘
霜绛2 小时前
机器学习笔记(四)——聚类算法KNN、Kmeans、Dbscan
笔记·算法·机器学习·kmeans·聚类
晨非辰3 小时前
#C语言——学习攻略:深挖指针路线(三)--数组与指针的结合、冒泡排序
c语言·开发语言·数据结构·学习·算法·排序算法·visual studio
zzywxc7873 小时前
编程算法在金融、医疗、教育、制造业等领域的落地案例
人工智能·算法·金融·自动化·copilot·ai编程
zzywxc7873 小时前
编程算法在金融、医疗、教育、制造业的落地应用。
人工智能·深度学习·算法·机器学习·金融·架构·开源
conkl4 小时前
构建 P2P 网络与分布式下载系统:从底层原理到安装和功能实现
linux·运维·网络·分布式·网络协议·算法·p2p
Shan12054 小时前
递归算法的一些具体应用
算法
paopaokaka_luck6 小时前
婚纱摄影管理系统(发送邮箱、腾讯地图API、物流API、webSocket实时聊天、协同过滤算法、Echarts图形化分析)
vue.js·spring boot·后端·websocket·算法·echarts