La Web del Programador: Comunidad de Programadores
 
    Pregunta:  717 - FUNCION RECURSIVA EN C++
Autor:  Jairo Alberto Cardenas
Amigos de la lista necesito su apoyo para realizar el siguiente codigo o funcion en C++ asi:

Funcion recursiva llamada Maxima que encuentre el entero mas grande en una lista encadenada llamada Lista. Se asume que la cabeza de la lista es de tipo nodo*, en donde nodo es una estructura con un miembro llamado Dato de tipo entero y un miembro llamado Siguiente de tipo nodo*.

Gracias por su ayuda


  Respuesta:  DANIEL ANDRADE GIRON
la funcion recursiva es:

int nodo::maximo(int *A,int n)
{
if(n==0)
return(A[0]);
else
if(maximo(A,n-1)<A[n])
return(A[n]);
else
return(maximo(A,n-1));
}

/* si deseas el detalle escribeme tengo muchos programas recursivos suerte*/

  Respuesta:  CHRISTIAN LOPEZ URBINA
Por la largada de la respuesta, esta en el archivo resp717.txt

  Respuesta:  Eduardo
Aca te mando un ejemplo. Si queres el programa completo escribime y te lo mando (es 100 % recursivo) y pienso que te va a servir.
int Maximo(Lista MiLista)
{
if( MiLista ) {
int n = Maximo(MiLista->next);
return ( MiLista->Dato > n ) ? MiLista->Dato : n;
}

return 0;}

como te daras cuenta no funciona si todos los valores de la lista son menores que cero. pero se vera alguna solucion.

Archivo fuente
Suerte