LeetCode210405重复字符串和统计大写字母

重复字符串

String s = “ababcababc”;
// 1-5
// 10被1整除 match=true charAt(1)!=charAt(0) match=false break;
// 10被2整除 match=true charAt(2)==charAt(0) charAt(3)==charAt(1) charAt(4)!=charAt(2) match=false break;
// 10被5整除 match=true charAt(5)==charAt(0) charAt(6)==charAt(1) charAt(7)==charAt(2) charAt(8)==charAt(3) charAt(9)==charAt(4) charAt(10)==charAt(5)
// 直到接触都没有被置为false

public static boolean method(String s) {
    
    
        int n = s.length();

        for (int i = 1; i*2 <= n; i++) {
    
     // 遍历 串长度一般的次数

            if (n % i == 0) {
    
     // 考虑能被一半的数之内的数整除
                boolean match = true;
                for (int j = i; j < n; j++) {
    
    
                    if (s.charAt(j) != s.charAt(j - i)) {
    
    
                        match = false;
                        break;
                    }
                }
                if (match) {
    
    
                    return true;
                }
            }
        }
        return false;
    }

统计大写字母

public static boolean method(String s){
    
    

        int count = 0;
        for (int i = 0; i < s.length(); i++) {
    
    
            char c = s.charAt(i);
            // 统计大写字母数量
            if (c>='A'&&c<='Z'){
    
    
                count++;
            }
        }
        if (count==0 || count==s.length() || count==1&s.charAt(0)>='A'&&s.charAt(0)<='Z') {
    
     //'A'=65 'Z'=90
            return true;
        }
        return false;
    }

猜你喜欢

转载自blog.csdn.net/m0_47119598/article/details/115449326
今日推荐