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;
}
最小覆盖子串
新生农民2025-04-13 13:58
相关推荐
小Ti客栈3 小时前
Spring Boot 集成 Springdoc-OpenAPI 与 Knife4j实现接口文档与可视化调试徐小夕3 小时前
花了一周,3亿tokens,我开源了一款 Word 文档智能审查平台,文稿自动质检+可视化分析,告别低效人工审核Ai拆代码的曹操3 小时前
Spring 事务 REQUIRES_NEW 嵌套调用:连接池翻倍的秘密动恰客流统计4 小时前
ReID边缘计算视觉统计:餐饮店客流增长的数字化破局路径可编程芯片开发4 小时前
UPFC统一潮流控制器的simulink建模与仿真Ivanqhz4 小时前
Rust &‘static str浅析小小仙子5 小时前
矢量网络分析仪如何测试S参数的?code bean6 小时前
【C#】 `Channel<T>` 深度解析:生产者-消费者模式的现代解法中微极客6 小时前
降维算法75倍加速:从PCA到稀疏字典学习的工程实践