滑动窗口,右边无脑滑动即可,左边看情况收缩
class Solution {
public int equalSubstring(String s, String t, int maxCost) {
int len = s.length(), sum = 0, result = 0;
for(int left = 0, right = 0; right < len; right++){
sum += Math.abs(s.charAt(right) - t.charAt(right));
if(sum > maxCost){
sum -= Math.abs(s.charAt(left) - t.charAt(left));
++left;
}
result = Math.max(result, right - left + 1);
}
return result;
}
}
本文介绍了一种使用滑动窗口算法解决字符串匹配问题的方法。通过不断扩展右边界并根据需要收缩左边界来寻找最长匹配子串,确保总成本不超过给定的最大值。此算法能够高效地处理大量数据。

被折叠的 条评论
为什么被折叠?



