Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema3 Recurrencias
Tema3 Recurrencias
int fact(int n)
{ if (n == 0)
1 if n=0
return 1; f ( n) =
else n * f (n − 1) otherwise
return(n * fact(n-1));
}
Técnicas para la Solución de Recurrencias
¿Cómo resolverla?
Primera idea, construir una tabulación de los valores que
toma la recurrencia para diferentes valores de n
TIP: note que la recurrencia solo queda definida para n
potencias de 2, es decir, para n = 2k, donde k es un entero
positivo
Ejemplo
n T(n)
21 3T(1)+2 = 3x1+2
22 3T(2)+22 = 3[3x1+2]+22 = 32x1 + 3x2 + 22
23 3T(4)+23 = 3[32x1 + 3x2 + 22] + 23 = 33x1 + 32x2 +
31x22 + 23
24 3T(8)+24 = 3[33x1 + 32x2 + 31x22 + 23]+24 =
34x1+33x2+32x22+3x23+24
k
T (2 k ) = 3k 20 + 3k −121 + ... + 30 2 k = ∑ 3k −i 2i
i =0
Ejemplo
∑3 2 = 3
i =0
k −i i k
∑ (
i =0
2 / 3) i
= 3 k +1
− 2 k +1
Por tanto:
T(2k) = 3k+1-2k+1
Como sabemos que n = 2k Æ log2n = k, con
lo cual se obtiene una T en términos de n:
T(n) = 3log n +1 – 2log n +1
Recurrencias Homogéneas
Introducción
fn = fn-1 + fn-2
Polinomio Característico
i =1
Ejemplo 1
c1 + c2 = 0
r1c1 + r2 c2 = 1
1 1
c1 = , c2 = −
5 5
Por tanto, se concluye lo siguiente:
1 1 + 5 1 − 5
n n
fn = −
5 2 2
Ejemplo 2
Considere la recurrencia:
0 si n = 0
t n = 5 si n = 1
3t + 4t otro caso
n −1 n−2
Polinomio característico:
x2 + 3x + - 4 = 0
Raíces: r1 = -1, r2 = 4
Solución general: tn = c1(-1)n + c24n
Ejemplo 2
c1 + c2 = 0 n=0
− c1 + 4c2 = 5 n =1
tn = 4n – (-1)n
Solución de Recurrencias con Raíces
Múltiples
Si la recurrencia a solucionar tiene raíces
múltiples, entonces la solución varía por lo
siguiente:
s mi −1
t n = ∑ ∑ cij n j ri n
i =1 j = 0
Ejemplo
Considere la recurrencia:
n si n = 0, n = 1, n = 2
tn =
5t n −1 − 8t n − 2 + 4t n −3 otro caso
Su polinomio característico es:
tn – 5tn-1 + 8tn-2 – 4tn-3 = 0
El polinomio característico es:
p(x) = x3 – 5x2 + 8x – 4 = 0
Por lo tanto:
r1 = 1, m1 = 1
r2 = 2, m2 = 2
Ejemplo
Estrategia general
Transformar la recurrencia a una expresión homogénea
Resolver la expresión, tomando en cuenta que la expresión
homogénea no es idéntica a la expresión original
Ejemplo 1
Considere la recurrencia:
tn – 2tn-1 = 3n
b = 3, p(n) = 1
Para transformar la recurrencia, se sigue el
siguiente proceso:
3(tn – 2tn-1 = 3n) Æ 3tn – 6tn-1 = 3n+1
Sustituyendo n Æ n – 1 se tiene
3tn-1 – 6tn-2 = 3n
Ejemplo 1
Considere la recurrencia:
tn – 2tn-1 = (n+5)3n
Dado que se desea una combinación lineal
de esta igualdad que sumadas den cero, se
observa lo siguiente:
(n+5)3n, -2 (3/3) (n+5)3n, (32/32) (n+5)3n
De lo anterior se obtienen las siguientes
recurrencias, las cuales son sumadas:
Ejemplo 2
tn − 2t n −1 = (n + 5)3n
− 6t n −1 + 12t n − 2 = − 6(n + 4)3n −1
9t n − 2 − 18t n −3 = 9(n + 3)3n − 2
tn = 2n -1
Cambio de Variable
Ejemplo
1 si n = 1
T ( n) =
3T (n / 2) + n si n > 1, potencia de 2
Consideremos que n = 2i
La recurrencia resultante ahora queda en términos de “i”
Por tanto, ti = T(2i)
Ejemplo