/
NikolayIvkin
/
TheAlgorithms
Обзор
Документация
Войти
/
NikolayIvkin
/
TheAlgorithms
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/main/java/com/thealgorithms/strings/LongestPalindromicSubstring.java
37 строк
1 KB
Alex Klymenko
test: `LongestPalindromicSubstring` (#5402)
26 авг 2024, 17:29
Не верифицирован
26 авг 2024, 17:29
d810a1d
Код
Авторство
О чём код?
package com.thealgorithms.strings; final class LongestPalindromicSubstring { private LongestPalindromicSubstring() { } /** * Finds the longest palindromic substring in the given string. * * @param s the input string * @return the longest palindromic substring */ public static String longestPalindrome(String s) { if (s == null || s.isEmpty()) { return ""; } String maxStr = ""; for (int i = 0; i < s.length(); ++i) { for (int j = i; j < s.length(); ++j) { if (isValid(s, i, j) && (j - i + 1 > maxStr.length())) { maxStr = s.substring(i, j + 1); } } } return maxStr; } private static boolean isValid(String s, int lo, int hi) { int n = hi - lo + 1; for (int i = 0; i < n / 2; ++i) { if (s.charAt(lo + i) != s.charAt(hi - i)) { return false; } } return true; } }