题解 | #长度为 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;
    }
}
全部评论

相关推荐

10-28 14:42
门头沟学院 Java
watermelon1124:因为嵌入式炸了
点赞 评论 收藏
分享
拉丁是我干掉的:把上海理工大学改成北京理工大学。成功率增加200%
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务