package
0.0.0-20241221191246-b80a13d7bbe0
Repository: https://github.com/yvv4git/go-algorithms.git
Documentation: pkg.go.dev
# README
459. Repeated Substring Pattern
Level - easy
Task
Given a string s, check if it can be constructed by taking a substring of it and appending multiple copies of the substring together.
Методы решения
- Brute force O(n^2)
- Конкатенация и подстрока O(n)
- Алгоритм Кнута-Морриса-Пратта(KMP) O(n)
- Использовать хэшь-функцию O(n)
- Конечный автомат O(n)
- Регулярные выражения O(n)
Example 1:
Input: s = "abab"
Output: true
Explanation: It is the substring "ab" twice.
Example 2:
Input: s = "aba"
Output: false
Example 3:
Input: s = "abcabcabcabc"
Output: true
Explanation: It is the substring "abc" four times or the substring "abcabc" twice.
Constraints:
- 1 <= s.length <= 104
- s consists of lowercase English letters.