Menu
CoddyTech

Longest Substring Without Repeating Characters

Esamina una stringa alla ricerca di sequenze di caratteri consecutivi in cui ogni carattere compare una sola volta. In coddycode, la sequenza ycode contiene cinque caratteri diversi e nessuna sequenza più lunga evita le ripetizioni, quindi la risposta è 5.

Controllare ogni possibile sequenza funziona, ma è lento. Un metodo più rapido mantiene una finestra tra due posizioni che non contiene mai ripetizioni. Sposta il bordo destro di un carattere alla volta. Quando il nuovo carattere è già nella finestra, sposta il bordo sinistro subito dopo la posizione in cui quel carattere era già stato visto. Ricordare l’ultima posizione di ogni carattere rende immediato questo spostamento, così la stringa viene letta una sola volta.

Scrivi una funzione chiamata lengthOfLongestSubstring che riceve una stringa s e restituisce la lunghezza della sottostringa più lunga (una sequenza di caratteri consecutivi) in cui nessun carattere compare più di una volta.

Le lettere maiuscole e minuscole sono caratteri diversi, quindi a e A non sono ripetizioni.

Vincoli: 1 <= s.length <= 5 * 10^4. s contiene solo lettere inglesi (minuscole e maiuscole) e cifre.

Funzione

lengthOfLongestSubstring(arg1: string) → integer
arg1string
Restituisceinteger

Esempi

Input
arg1 = "coddycode"
Output
5

lock icon+12 test nascosti all’invio

Ripristina il codice
def lengthOfLongestSubstring(s):
    # Scrivi il codice qui
Casi di test

Caso 1

Caso 2

Caso 3

Input

arg1 = "coddycode"

Atteso

5