¿Es isograma?
- O(n log n) · Difícil
- Plan completo
- Python
- JavaScript
- textos
- ordenar
- booleanos
Enunciado
Un isograma es una palabra que no repite ninguna letra: "murcielago" lo es, "ventana" no, porque la n y la a llegan dos veces.
Escribe una función que reciba un texto y regrese verdadero si es isograma y falso si no.
Las reglas: las mayúsculas y las minúsculas cuentan como la misma letra, así que "Ana" no es isograma. Los espacios y los guiones no son letras: aunque se repitan, no estorban. Con el texto vacío regresas verdadero, porque no hay ninguna letra repetida.
Se puede comparar cada letra con todas las demás, pero hay un camino más corto: ordena las letras y revisa solo vecinas, porque dos letras iguales siempre quedan pegadas.
Ejemplos
Sin repetir ninguna
"murcielago" → true
Con una letra repetida
"ventana" → false
Mayúscula y minúscula
"Ana" → false
Con guiones
"mar-luz-pin" → true
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def es_isograma(texto):
passJavaScript
function esIsograma(texto) {
}Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.