Menu
CoddyTech

Longest Substring Without Repeating Characters

Percorra uma string em busca de trechos de caracteres consecutivos em que cada caractere aparece apenas uma vez. Em coddycode, o trecho ycode tem cinco caracteres diferentes, e nenhum trecho mais longo evita uma repetição, então a resposta é 5.

Verificar todos os trechos possíveis funciona, mas é lento. Um método mais rápido mantém uma janela entre duas posições que nunca contém repetições. Mova a borda direita um caractere de cada vez. Quando o novo caractere já estiver dentro da janela, mova a borda esquerda para logo depois da posição em que esse caractere foi visto antes. Lembrar a última posição de cada caractere torna esse salto instantâneo, então a string é percorrida apenas uma vez.

Escreva uma função chamada lengthOfLongestSubstring que recebe uma string s e retorna o comprimento da maior substring (uma sequência de caracteres consecutivos) na qual nenhum caractere aparece mais de uma vez.

Letras maiúsculas e minúsculas são caracteres diferentes, então a e A não são repetidos.

Restrições: 1 <= s.length <= 5 * 10^4. s contém apenas letras do alfabeto inglês (minúsculas e maiúsculas) e dígitos.

Função

lengthOfLongestSubstring(arg1: string) → integer
arg1string
Retornainteger

Exemplos

Entrada
arg1 = "coddycode"
Saída
5

lock icon+12 testes ocultos ao enviar

Redefinir código
def lengthOfLongestSubstring(s):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Caso 3

Entrada

arg1 = "coddycode"

Esperado

5