Lc459 重複的子字串

2022-07-05 22:15:13 字數 1297 閱讀 1838

/**2 * 459. 重複的子字串

3 * 給定乙個非空的字串,判斷它是否可以由它的乙個子串重複多次構成。給定的字串只含有小寫英文本母,並且長度不超過10000。

4 * 

5 * 示例 1:

6 * 

7 * 輸入: "abab"

8 * 

9 * 輸出: true

10 * 

11 * 解釋: 可由子字串 "ab" 重複兩次構成。

12 * 示例 2:

13 * 

14 * 輸入: "aba"

15 * 

16 * 輸出: false

17 * 示例 3:

18 * 

19 * 輸入: "abcabcabcabc"

20 * 

21 * 輸出: true

22 * 

23 * 解釋: 可由子字串 "abc" 重複四次構成。 (或者子字串 "abcabc" 重複兩次構成。)

24 * 通過次數61,782提交次數120,991

25 */

26public

class

repeatedsubstringpattern

44//        system.out.println();

45//        system.out.println("***************next********************=");

4647

int len = s.length();

48if (next[next.length - 1] != 0 && len % (len - (next[len - 1])) == 0) 

51return

false;

52    }

5354

/**55     * 找最大公共前字尾

56     *

57     * @return

58     */

59private

static

int getnext(int next, string s) 

69if (s.charat(i) == s.charat(j)) 

72            next[i] = j;

73        }

74return next;

75    }

7677

public

static

void

main

(string args)

80}

459 重複的子字串

給定乙個非空的字串,判斷它是否可以由它的乙個子串重複多次構成。給定的字串只含有小寫英文本母,並且長度不超過10000。示例 1 輸入 abab 輸出 true 解釋 可由子字串 ab 重複兩次構成。示例 2 輸入 aba 輸出 false 示例 3 輸入 abcabcabcabc 輸出 true 解...

459 重複的子字串

題目描述 給定乙個非空的字串,判斷它是否可以由它的乙個子串重複多次構成。給定的字串只含有小寫英文本母,並且長度不超過10000。解題思路一 迴圈遍歷可以重複的長度,依次比較每個重複長度中對應的字元是否相等,只要可以成功匹配並遍歷完整個陣列,即返回true,否則返回false,如下 class sol...

459 重複的子字串

難度 簡單 2020 8 24每日一題打卡 題目描述 解題思路 想法很巧妙啊,大概是這輩子我也想不出來的方法哈哈哈 比如說abcabc,兩個拼一起就是 a bcabcabcab c 去掉首尾兩個字元,實際上就是破除了迴圈 看剩下的字元中是否包含原來的子串,如果包含則說明存在迴圈,如果不包含則不存在 ...