Menu
CoddyTech

Is Subsequence

LeichtZwei Zeigerpython iconjava iconcpp iconc iconjs icon+10

Du erhältst zwei Zeichenfolgen, s und t. Gib true zurück, wenn du t in s umwandeln kannst, indem du einige seiner Buchstaben löschst (möglicherweise auch keine), während die verbleibenden Buchstaben ihre Reihenfolge beibehalten, und andernfalls false. Zum Beispiel ist ace eine Teilfolge von abcde, aber aec ist es nicht.

Funktion

isSubsequence(s: string, t: string) → boolean
sstring
die zu suchende Zeichenfolge
tstring
die Zeichenfolge, aus der Buchstaben gelöscht werden sollen
Gibt zurückboolean
wahr, wenn s innerhalb von t der Reihenfolge nach gelesen werden kann, möglicherweise mit Lücken

Einschränkungen

  • 1 ≤ s.length ≤ 3 × 104
  • 1 ≤ t.length ≤ 5 × 104
  • s und t enthalten nur englische Kleinbuchstaben.

Beispiele

Eingabe
s = "ace"t = "abcde"
Ausgabe
true
Erklärung
Wenn du b und d aus abcde löschst, bleibt ace in derselben Reihenfolge übrig.
challenge icon

Weiterführende Frage

Wenn t unverändert bleibt und du eine Million Zeichenketten s damit vergleichst, wie würdest du t vorbereiten, damit jeder Vergleich schneller ist, als ganz t zu lesen?

Code zurücksetzen
def isSubsequence(s, t):
    # Schreibe hier den Code

Test #1

Test #2

Test #3

Argumente

s = "ace"
t = "abcde"

Erwartete Ausgabe

true