最小覆盖子串

复制代码
public static String minWindow2(String s, String t){
    if (t.length()>s.length()){
        return "";
    }
    HashMap<Character, Integer> hashMap = new HashMap<>();
    for (Character i:t.toCharArray()){
        if (hashMap.containsKey(i)){
            hashMap.put(i,hashMap.get(i)-1);
        }else{
            hashMap.put(i,-1);
        }
    }
    //滑动窗口
    int start=0;
    int end=0;
    int max=Integer.MAX_VALUE;
    String res = "";
    while (end<s.length()){
        //不为null
        if (hashMap.get(s.charAt(end))!=null){
            hashMap.put(s.charAt(end),hashMap.get(s.charAt(end))+1);
            //判断符合不
            if (test18(hashMap)){
                //将start往后移动
                while (test18(hashMap)&&start<=end){
                    //更改max
                    if (end-start+1<max){
                        max = end-start+1;
                        res = s.substring(start,end+1);
                    }
                    if (hashMap.get(s.charAt(start))!=null){
                        //减去1
                        hashMap.put(s.charAt(start),hashMap.get(s.charAt(start))-1);
                    }
                    start++;
                }
                end++;
            }else{
                end++;
            }
        }else{
            end++;
        }
    }
    return res;
}
public static boolean test18(HashMap<Character, Integer> hashMap){
    for (Integer i:hashMap.values()){
        if (i<0){
            return false;
        }
    }
    return true;
}
相关推荐
霸道流氓气质1 天前
SpringBoot中实现告警判定算法-位报警与模拟量阈值-技术详解
spring boot·算法·jquery
行者全栈架构师1 天前
混元 Hy3 Agent 实战:季度报告 3 小时变 40 分钟
算法·架构·代码规范
YDS8291 天前
大营销平台 —— 活动SKU库存扣减业务及其一致性处理
java·spring boot·redis·rabbitmq·ddd
减瓦1 天前
源码视图技术:集 APT 和 AST 所长
java·project lombok
wending-Y1 天前
Flink 滑动窗口作业 TaskManager RocksDB 状态膨胀 Bug 分析
java·前端·数据库
兰令水1 天前
hot100【acm版】【2026.7.21打卡-java版本】
java·开发语言·算法·leetcode·面试
IT_Octopus1 天前
一次由 RestTemplate 引发的 Connection reset:被 XML 截胡的请求体
xml·java·spring boot
云烟成雨TD1 天前
Micrometer 系列【2】可观测性:指标(Metrics)
java·云原生·micrometer
2501_914245931 天前
Java应用性能调优与生产监控部署:2026年实战手册
java·开发语言