题解 | #长度为 K 的重复字符子串#
长度为 K 的重复字符子串
http://www.nowcoder.com/practice/eced9a8a4b6c42b79c95ae5625e1d5fd
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @param k int整型
* @return int整型
*/
public static boolean check(String str){
int len=str.length();
boolean res=false;
HashMap<Character,Integer> maps=new HashMap<>();
for(int i=0;i<len;i++){
if(maps.isEmpty()){
maps.put(str.charAt(i), maps.getOrDefault(str.charAt(i), 0)+1);
}else{
if(maps.containsKey(str.charAt(i))){
res=true;
break;
}
maps.put(str.charAt(i), maps.getOrDefault(str.charAt(i), 0)+1);
}
}
return res;
}
public static int numKLenSubstrRepeats (String s, int k) {
// write code here
int res=0;
int fast=0;
int slow=0;
fast+=k;
while(slow<s.length()-k+1){
if(check(s.substring(slow,fast))){
res++;
}
slow++;
fast++;
}
return res;
}
}