Menu
CoddyTech

Permutation in String

Eine Permutation eines Strings verwendet dieselben Buchstaben in beliebiger Reihenfolge, jeden so oft wie im Original: tar, rat und art sind Permutationen voneinander. Du erhältst zwei Strings s1 und s2, die aus englischen Kleinbuchstaben bestehen. Gib true zurück, wenn eine Permutation von s1 in s2 als Teilzeichenfolge (eine Folge aufeinanderfolgender Zeichen) vorkommt, andernfalls false.

Funktion

checkInclusion(s1: string, s2: string) → boolean
s1string
die Buchstaben zum Umstellen
s2string
die Zeichenfolge, in der gesucht werden soll
Gibt zurückboolean
true, wenn eine Teilzeichenfolge von s2 eine Umordnung von s1 ist

Einschränkungen

  • 1 ≤ s1.length ≤ 2 × 104
  • 1 ≤ s2.length ≤ 5 × 104
  • s1 und s2 enthalten nur englische Kleinbuchstaben (a bis z).
  • s1 kann länger sein als s2.

Beispiele

Eingabe
s1 = "tar"s2 = "smartphone"
Ausgabe
true
Erklärung
Die Teilzeichenfolge art an den Indizes 2 bis 4 von smartphone enthält ein a, ein r und ein t, dieselben Buchstaben wie tar.

lock icon+17 versteckte Tests beim Einreichen

challenge icon

Weiterführende Frage

Kannst du alle Indizes von s2 zurückgeben, an denen eine Permutation von s1 beginnt, und das weiterhin in O(m + n)-Zeit?

Code zurücksetzen
def checkInclusion(s1, s2):
    # Schreibe hier den Code
Testfälle

Fall 1

Fall 2

Fall 3

Eingabe

s1 = "tar"
s2 = "smartphone"

Erwartet

true