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
相关推荐
致Great1 分钟前
大模型对齐核心技术:从第一性原理完整推导 PPO 算法!_w_z_j_2 分钟前
二叉树的右视图(BFS或DFS)w_zero_one7 分钟前
Java的Vert.x框架结合Thymeleaf(TH)模板语言咸鱼2.016 分钟前
【java入门到放弃】网络cyyt18 分钟前
深度学习周报(12.22~12.28)WBluuue19 分钟前
Codeforces Global 31 Div1+2(ABCD)Roye_ack19 分钟前
【微服务 Day2】SpringCloud实战开发(微服务拆分步骤 + Nacos注册中心 + OpenFeign + 微服务拆分作业)wniuniu_21 分钟前
blob是啥.生产的驴27 分钟前
DockerCompoe 部署注册中心Nacos 一键部署 单机+Mysql8会员果汁32 分钟前
算法-并查集-C