Menu
CoddyTech

First Unique Character in a String

LeichtHashingpython iconjava iconcpp iconc iconjs icon+10

Du erhältst eine Zeichenfolge s aus englischen Kleinbuchstaben. Finde das erste Zeichen, das genau einmal in der gesamten Zeichenfolge vorkommt, und gib seinen Index zurück, gezählt ab 0. Wenn jedes Zeichen mehr als einmal vorkommt, gib -1 zurück.

Funktion

firstUniqChar(s: string) → integer
sstring
die zu durchsuchende Zeichenfolge, nur Kleinbuchstaben
Gibt zurückinteger
der Index des ersten Buchstabens, der genau einmal vorkommt, oder -1, falls es keinen gibt

Einschränkungen

  • 1 ≤ s.length ≤ 5 × 104
  • s enthält nur englische Kleinbuchstaben (a bis z).

Beispiele

Eingabe
s = "coddycode"
Ausgabe
4
Erklärung
In coddycode kommen die Buchstaben c und o zweimal vor, d dreimal und e einmal, an Index 8. Aber auch y kommt einmal vor, an Index 4, und es kommt zuerst, daher lautet die Antwort 4.

lock icon+17 versteckte Tests beim Einreichen

challenge icon

Weiterführende Frage

Die Zeichen treffen nacheinander aus einem Datenstrom ein, und nach jedem Zeichen musst du das erste bisher eindeutige Zeichen angeben. Wie würdest du die Antwort stets aktuell halten?

Code zurücksetzen
def firstUniqChar(s):
    # Schreibe hier den Code
Testfälle

Fall 1

Fall 2

Fall 3

Eingabe

s = "coddycode"

Erwartet

4