jueves, 11 de agosto de 2011

Implementar Recursión Usando Pilas


Otra de las aplicaciones en las que podemos utilizar las pilas es en la implementación de la recursividad. A continuación se mostrarán algunos ejemplos. 
   
              |
           |      1 ,            N=0
Factorial< 
           |      N*(n-1)!,      N&gt0
           |
 
        sp <--0
        mientras n <> 1 haz
        push(pila,n)
        n<--n-1
        mientras sp <> 0 haz
        factorial<--factorial*pop(pila)
 
 
        |
        |      0  ,       si a < b
Q     < 
        |   Q(a-b,b)+1,   si a<=b
        |
 
        sp<--0
        Q<--0
        lee(a), lee(b)
        mientras a>=b haz
        push(pila,1)
        a<--a-b
        mientras sp< > 0 haz
        Q<-- Q + pop(pila)

 

No hay comentarios:

Publicar un comentario