function longestOverlappingSubstring(s) {
let maxLength = 0;
let longestSubstring = '';
for (let len = 1; len <= s.length; len++) {
for (let start = 0; start <= s.length - len; start++) {
let substr = s.substring(start, start + len);
let index = s.indexOf(substr, start + 1); // 查找下一个相同子串的起始位置
if (index !== -1) { // 找到重复子串
if (substr.length > maxLength) {
maxLength = substr.length;
longestSubstring = substr;
}
}
}
}
return longestSubstring;
}
// 测试代码
const s = "ababababa";
const result = longestOverlappingSubstring(s);
console.log(`最长的可重叠的重复子串为: "${result}"`);