Dada una lista de ‘n’ palabras, verifique si forman una cadena de palabras. En una cadena de palabras, las palabras adyacentes deben diferir exactamente en una letra, por ejemplo, ¿curar, cabeza, muerto, escritura, ciervo, cerveza?

Aquí hay una solución de Python (básicamente se lee como pseudocódigo):

  def check_word_chain (palabras):
   si len (palabras) == 0:
     devuelve True # o false, dependiendo del comportamiento deseado
   prev_word = palabras [0] #inicializar a la primera palabra
   len_word = len (anterior_word)
   para i en rango (1, len (palabras)):
     if len (palabras [i]) == len_word:
       found_mismatch = False
       para j en rango (len_word):
         if prev_word [j]! = palabras [i] [j]:
           if found_mismatch:
             falso retorno
           found_mismatch = True
       if found_mismatch:
         prev_word = palabras [i]
       de lo contrario devuelve falso
     de lo contrario devuelve falso
   volver verdadero

 t = [] # verdadero
 t1 = ["curar"] # verdadero
 t2 = ["curar", "cabeza", "muerto", "escritura", "ciervo", "cerveza"] # verdadero
 t3 = ["sanar", "cabeza", "muerto", "deef", "venado", "cerveza"] # falso
 t4 = ["curar", "cabeza", "muerto", "escritura", "ciervo", "beed"] # falso
 t5 = ["curar", "curar"] # falso

 pruebas = [t, t1, t2, t3, t4, t5]
 para i en rango (len (pruebas)):
   print "test #:" + str (i) + "," + str (check_word_chain (tests [i]))

Comentarios son bienvenidos!

More Interesting

Dada una cadena, ¿encuentra la longitud de la subcadena más larga donde ningún personaje se repite dos veces?

¿Cuál es la forma más eficiente de mejorar los algoritmos para programar entrevistas?

Se le da una matriz de n elementos [1,2, ... .n]. Por ejemplo {3,2,1,6,7,4,5}. Ahora creamos una firma de esta matriz comparando cada par de elementos consecutivos. Si aumentan, escriba I else write D.?

Cómo resolver esta pregunta de entrevista (c ++ / Java)

Cómo prepararse para entrevistas tecnológicas mientras tiene un trabajo

¿Qué empresas o startups debo solicitar para una pasantía?

Cómo prepararme para codificar entrevistas en tres meses

Constantemente me quedo atascado en las preguntas de la entrevista de programación técnica incapaz de progresar. ¿Hay alguna forma de practicar y mejorar?

¿Cuánto cuestan las preguntas formuladas en la entrevista relacionadas con el perfil del trabajo? ¿Preguntas sobre estructuras algorítmicas y de datos especialmente?

¿Cuáles son los buenos sitios web de desafíos de codificación?

Cómo encontrar un elemento duplicado en una matriz con una complejidad temporal menor que O (n ^ 2) y una complejidad espacial de O (1)

¿Qué algoritmos de la geometría computacional son esenciales en la programación de entrevistas?

¿Qué se siente al fallar 15 entrevistas de programación?

Cómo juzgar a un programador Java con solo 5 preguntas

¿Cuáles son algunos proyectos de C ++ que puedo hacer para mejorar mi conocimiento de la estructura de datos y ayudarme en entrevistas técnicas?