Menu
CoddyTech

Longest Palindromic Substring

Du erhältst eine Zeichenfolge s aus englischen Kleinbuchstaben. Gib ihre längste palindromische Teilzeichenfolge zurück: die längste Folge aufeinanderfolgender Buchstaben, die vorwärts und rückwärts gleich gelesen wird. Haben mehrere Teilzeichenfolgen dieselbe größte Länge, gib diejenige zurück, die am weitesten links beginnt.

Funktion

longestPalindrome(s: string) → string
sstring
die Kleinbuchstaben-Zeichenfolge, nach der gesucht werden soll
Gibt zurückstring
die längste palindromische Teilzeichenfolge von s; bei mehreren gleich langen die am weitesten links stehende

Einschränkungen

  • 1 ≤ s.length ≤ 2000
  • s enthält ausschließlich englische Kleinbuchstaben.
  • Wenn mehrere Palindrome die größte Länge haben, ist die Antwort dasjenige mit dem kleinsten Startindex.

Beispiele

Eingabe
s = "bananas"
Ausgabe
"anana"
Erklärung
"anana" liest sich von beiden Seiten gleich und hat 5 Buchstaben. Kein längeres Stück funktioniert: "banana" beginnt mit b und endet mit a, "ananas" beginnt mit a und endet mit s, und das ganze Wort beginnt mit b und endet mit s.
challenge icon

Weiterführende Frage

Kannst du die Antwort in O(n)-Zeit finden?

Code zurücksetzen
def longestPalindrome(s):
    # Schreibe hier den Code

Test #1

Test #2

Test #3

Argument

s = "bananas"

Erwartete Ausgabe

"anana"