Ejercicio 1, parte VI isIncluded recursivo

Ejercicio 1, parte VI isIncluded recursivo

de Ines Beatriz Lorenzo Soumastre -
Número de respuestas: 1

Buenos días,

Tengo una consulta en el ejercicio IsIncluded en el modo recursivo.

En el video con la solución, en el paso recursivo se hace lo siguiente:

return ( l->elem == p-> elem &&  isPrefix (l->sig, p-> sig)) || isIncluded(l , p-> sig) ) 

pero yo entraría a isPrefix directamente con l y p, de esta forma:

return (isPrefix (l, p)) || isIncluded(l , p-> sig) )

Estaría mal mi camino?

Saludos!


En respuesta a Ines Beatriz Lorenzo Soumastre

Re: Ejercicio 1, parte VI isIncluded recursivo

de Gaston Notte -

Hola Inés, las funciones "isIncluded" e "isPrefix" tienen exactamente los mismos pasos base. Primero se debe chequear si l es NULL (se retorna TRUE), sino se chequea si p es NULL (se retorna FALSE), y de lo contrario viene el paso recursivo.

En tu solución los pasos base para l y p los repites, chequeas los mismos punteros en isIncluded y en isPrefix. La solución presentada en el video ya se mete en isPrefix con los punteros sig de l y p, evitando de esta forma repetir las comparaciones para los mismos punteros.