Menu
CoddyTech

Isomorphic Strings

FácilHashingpython iconjava iconcpp iconc iconjs icon+10

Dos cadenas son isomorfas cuando puedes cambiar el nombre de los caracteres de la primera para obtener la segunda. Cada aparición de un carácter recibe el mismo nombre nuevo, dos caracteres diferentes nunca reciben el mismo nombre y un carácter puede conservar el suyo. Para dos cadenas s y t de la misma longitud, devuelve true cuando sean isomorfas y false cuando no lo sean.

Función

isIsomorphic(s: string, t: string) → boolean
sstring
la cadena que se va a renombrar, letras y dígitos
tstring
la cadena a la que llegar, de la misma longitud que s
Devuelveboolean
verdadero si un renombramiento uno a uno de los caracteres de s da como resultado t

Restricciones

  • 1 ≤ s.length ≤ 2 × 104
  • t.length == s.length
  • s y t contienen solo letras y dígitos en inglés. Las mayúsculas y las minúsculas son caracteres distintos.

Ejemplos

Entrada
s = "noon"t = "deed"
Salida
true
Explicación
Cambia el nombre de n por d y el de o por e. Todas las posiciones concuerdan con ese cambio de nombre, y las dos letras reciben nombres diferentes.
challenge icon

Para ir más allá

Dada una lista de palabras, ¿puedes agrupar las que son isomorfas entre sí sin comparar cada par de palabras?

Restablecer código
def isIsomorphic(s, t):
    # Escribe el código aquí

Prueba #1

Prueba #2

Prueba #3

Argumentos

s = "noon"
t = "deed"

Salida Esperada

true