C.滑动窗口-求子数组个数-越长越合法——3325. 字符至少出现 K 次的子字符串 I

题目链接:3325. 字符至少出现 K 次的子字符串 I(中等)

算法原理:

解法:滑动窗口

跟模板题基本一样👇

C.滑动窗口-求子数组个数-越长越合法------1358. 包含所有三种字符的子字符串数目(模板)

答疑

Q1:为什么只需判断进窗口元素出现的次数就可以呢?

因为只有进窗口的元素有可能次数超过K

Java代码:

java 复制代码
class Solution {
    public int numberOfSubstrings(String ss, int k) {
        int[] hash=new int[26];
        char[] s=ss.toCharArray();
        int ret=0,left=0;
        for(char c:s){
            //进窗口
            hash[c-'a']++;
            //出窗口
            while(hash[c-'a']>=k)
                hash[s[left++]-'a']--;
            //更新
            ret+=left;
        }
        return ret;
    }
}
相关推荐
hoiii1877 小时前
粒子滤波跟踪系统 - 蒙特卡洛方法实现
算法
weisian1517 小时前
Java并发编程--47-分布式ID生成器:雪花算法(Snowflake)与时钟回拨问题
java·算法·时钟回拨·雪花算法id
itzixiao7 小时前
L1-066 猫是液体(5分)[java][python]
java·开发语言·python·算法
ytttr8737 小时前
MATLAB SIFT图像配准实现
算法·机器学习·matlab
小饕7 小时前
从 Word2Vec 到多模态:词嵌入技术的演进全景
人工智能·算法·机器学习
海参崴-7 小时前
AVL树完整实现与深度解析
算法
一个爱编程的人8 小时前
一个数是不是素数
数据结构·算法
Hui_AI7208 小时前
基于RAG的农产品GEO溯源智能问答系统实现
开发语言·网络·人工智能·python·算法·创业创新
lwf0061648 小时前
FFM (Field-aware Factorization Machine) 学习日记
算法·机器学习
南宫萧幕8 小时前
HEV能量管理控制算法实战:从MPC/RL理论基础到Simulink闭环建模
算法·matlab·汽车·控制·pid