美文网首页
【教3妹学算法-每日3题(1)】最大重复子字符串

【教3妹学算法-每日3题(1)】最大重复子字符串

作者: 程序员小2 | 来源:发表于2022-07-19 22:42 被阅读0次

    插: 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。
    坚持不懈,越努力越幸运,大家一起学习鸭~~~

    3妹

    3妹:2哥,今天周日,出去玩一玩,爬爬山怎么样。
    2哥:还出去玩呢,现在全国疫情又反复了, 前段时间上海疫情刚控制住,现在宿州泗县和无锡疫情又爆发了,还是注意一些,不要随便出去走动了。
    3妹:哦,是哦,普通公民能做的就是尽量居家,不能防疫添麻烦。
    2哥:对,还是在家打会儿游戏吧,来,带你打野。
    3妹:切,我对打游戏没兴趣,我还是做几道题,然后看我的韩剧吧

    讲课

    题目:

    给你一个字符串 sequence ,如果字符串 word 连续重复 k 次形成的字符串是 sequence 的一个子字符串,那么单词 word 的 重复值为 k 。单词 word 的 最大重复值 是单词 word 在 sequence 中最大的重复值。如果 word 不是 sequence 的子串,那么重复值 k 为 0 。

    给你一个字符串 sequence 和 word ,请你返回 最大重复值 k 。

    示例 1:

    输入:sequence = "ababc", word = "ab"
    输出:2
    解释:"abab" 是 "ababc" 的子字符串。
    示例 2:

    输入:sequence = "ababc", word = "ba"
    输出:1
    解释:"ba" 是 "ababc" 的子字符串,但 "baba" 不是 "ababc" 的子字符串。
    示例 3:

    输入:sequence = "ababc", word = "ac"
    输出:0
    解释:"ac" 不是 "ababc" 的子字符串。

    提示:

    1 <= sequence.length <= 100
    1 <= word.length <= 100
    sequence 和 word 都只包含小写英文字母。

    思路:

    注意题目描述的是连续重复。
    所以我们用StringBuilder拼接word
    首先判断sequence是否包含word
    如果包含则count++,然后sb再拼接一个word。
    直至不包含为止退出循环。
    count既是结果

    java代码:

    class Solution {
        public int maxRepeating(String sequence, String word) {
            int count = 0;
            StringBuilder sb = new StringBuilder(word);
            while(sequence.contains(sb)) {
                count++;
                sb.append(word);
            }
            return count;
        }
    }
    
    

    相关文章

      网友评论

          本文标题:【教3妹学算法-每日3题(1)】最大重复子字符串

          本文链接:https://www.haomeiwen.com/subject/axoebrtx.html