Documente Academic
Documente Profesional
Documente Cultură
Faccois de la Rochefoucald
(1613-1680) Escritor francs
I INDUCCION MATEMATICA
Consideremos que la proposicin P(n) definida en un dominio. Se desea
demostrar que P(n) es verdadera para todo n en el dominio. Si verificamos que:
Quiere decir que si se cumple los pasos 1 y 2 entonces por el principio de induccin
afirmamos que se cumple el paso 3, es decir P(n) es verdadera para todo n.
Ejemplo 1
i = 1 + 2 + 3 +... n = n . (n + 1)
2
sea el enunciado
P(n) = 1 + 2 + 3 +... n = n . (n + 1)
2
1 para n = 1 P(1) = 1 = 1 . 2 = 1
2
= (1 + 2 + 3 +... h) + h+1
= h.(h + 1)+h+1
2
= (h+1) . (h+2)
2
por el principio de induccin matemtica se sigue que P(n) es verdadera para todo n 1.
Ejemplo 2
Probar i3 = ( i )2
sea el enunciado
3 3 3 3 2
P(n) = 1 + 2 + 3 +...n =(1 + 2 + 3 +... n)
3 2
1 para n = 1 P(1) = 1 = 1 = 1
por el principio de induccin matemtica se sigue que P(n) es verdadera para todo n1.
Ejemplo 3
FUNCION CUADRADO(A) A
INICIO
K 0
S 0
MIENTRAS K < A
S S + A
K K + 1
A*A
FIN MIENTRAS
RETORNAR(S)
RETORNAR
para n = 0
P(0) : S0 = 0 = A x K0 = A * 0
porque S e K no han pasado an por el ciclo MIENTRAS
Para n = h 0
Sh = A x Kh hipotesis inductiva
Sh+1 = Sh + A ............(a)
Kh+1 = Kh + 1 .............(b)
Sh+1 = A x Kh + A = A x (Kh +1 )
Ejemplo 4
FUNCION CUADRADO(X,Y) X
INICIO
Y 0
B 0
MIENTRAS B X
Y Y + X
B B + 1
FIN MIENTRAS Y= X*X
RETORNAR
P(0) : Y0 = 0 = X . B0 = X * 0
Para n = h 0
Yh = X x Bh hiptesis inductiva
Para n = h+1 se tiene:
Yh+1 = Yh + X ............(a)
Bh+1 = Bh + 1 .............(b)
Yh+1 = X x Bh + X = X x ( Bh +1 )
= X x Bh+1 por (b
II Recursin
La recursin es un mtodo que, directa o indirectamente, se hace una llamada as
mismo. Esto puede parecer un circulo vicioso: cmo un mtodo F puede resolver un
problema llamndose a si mismo?
La clave esta en que el mtodo F se llama as mismo pero en instancias diferentes, mas
simples, en algn sentido adecuado
Ejemplo
Ejemplo 5
Definicion recursiva de tren
Ejemplo 6
Sea S(N) : suma de los N primeros nmeros. S(N) puede definirse :
Forma recursiva
Algoritmo iterativo
S(1) = 1
S(N) = S(N-1) +N Entero S(Entero N)
Inicio
S=0
Para i desde 1 hasta N
Forma explicita
S = S +i
FinPara
S(N) = N*(N+1) /2
Retornar( S)
Fin
Algoritmo recursivo
Entero Suma()
Inicio
Leer N Entero S(Entero N)
Algoritmo
Inicio recursivo
Escribir S(N)
Fin Si N = 1
Retornar 1
Sino
Retornar( S(N-1)+N)
Fin si
Fin
La funcin Suma lee N y luego escribe
S(N) que es la suma de los N primeros nmeros
Ejemplo 7
El objetivo del programa recursivo, es realizar una serie de llamadas hasta que la
secuencia se define en un punto.
Ejemplo 8
La funcin Factorial puede ser desarrollada iterativamente o recursivamente.
Matemticamente de define como:
1 si
n01
n
!
n
(
n1
) si
n1
Ejemplo 9
La funcin factorial anterior es recursiva lineal.
fib(int n)
{
if(n==0 || n==1) return 1; /* condicin bsica */
else
return (fib(n-1)+fib(n-2)); /* doble llamada */
}
Recursin de Cola
Ejemplo 10
Dada la funcin
a si n=0
G(n,a)=
G(n-1,n*a) si n>0
G(int n, int a)
{
if( n==0) return a;
else g(n-1,n*a);
}
Para g(3,1)=g(2,3)=g(1,6)=g(0,6)=6
Se puede observar que todo el trabajo de una funcin con recursin de cola se realiza en
la fase de activacin, es decir cuando se realiza la llamada. En el caso de la funcin
recursiva lineal este se realiza despus de que el control regresa.
Ejemplo 11
Relacin de recurrencia
Mientras que
an+1 = 3 an n 0 donde a0 = 3 define 3, 19, 27, 81.
an = AKn n0
n
As la solucin an = AK , n 0 , define una funcin discreta cuyo dominio es el
conjunto N de los enteros no negativos
Ejemplo 12
an = a n 1 + a n2
Donde K = 2, a0 = 1 a1 = a2 = -1
n
Podemos remplazar tn por x
donde x es uma constante desconocida por el momento
Las races de esta ecuacin estn en alguno de los tres casos siguientes:
Ejemplo 13
Con races r1 = 2 y r2 = -3
an = c1 r1 n + c2 r2 n = c1 2 n + c2 (-3) n
cuando n = 0
a0 = 1= c1 20 + c2 (-3)0 = c1 + c2 (a)
cuando n = 1
a1 = 2 = c1 21 + c2 (-3)1 = 2c1 - 3 c2 (b)
c1 = 1 y c2 = 0
por tanto
an = 2 n
para n 0
Recurrencia no homognea
Una recurrencia es no homognea cuando la combinacin lineal no es igual a
cero, es decir, no es cierto que toda la combinacin lineal de las soluciones sea
una solucin
Ejemplo 14
3an-1 6 a n 2 = 3 n (c)
an 5 a n 1 + 6 a n-2 = 0 (d)
Ejemplo 15
Solucion iterativa
Accion Principal()
Inicio
Leer N Accion SUMA(K)
Escribir SUMA(N) Inicio
S=2
V=5
Fin
Para i desde 1 hasta K-1
S=S+V
V=V +3
FinPara
Retornar S
Fin
Solucion recursiva
Accion Principal()
Inicio
Leer N Accion SUMA(K)
S=0 Inicio
Para i desde 1 hasta N Si k=1
S = S + SUMA(i) Retornar 2
FinPara Sino
Escribir S Retornar SUMA(K-1) + 3
Fin FinSi
nuevamente
si remplazamos n con n-1 en (a) tenemos
an-2 = a- n 3 +3 (d)
an = a n k +k * 3
si hacemos K = n-1 tenemos
an = a 1 +(n-1) * 3
y como a1 = 2
tenemos finalmente
an = 2 +3 * (n-1)
Laboratorio
Implemente una solucin recursiva para hallar la suma de los
primeros N trminos de la sucesin
3, 5, 11, 22, 44
Ejercicios Propuestos
a) FUNCION ABC(B, Y; W)
INICIO
W 1
MIENTRAS Y > 0
W W * B
Y Y - 1
FIN MIENTRAS
RETORNAR
Y
El algoritmo recibe como entrada B y Y, y devuelve W = B
Y Y
Sea la proposicin P(n) : Wn * B n = B
b) FUNCION COMPARA(C, B; X)
INICIO
X C
D B
MIENTRAS D > 0
X X + B
D D - 1
FIN MIENTRAS
RETORNAR
RECURSION
9 Torres de Hannoi
H(n) = n si n 1
H(n-1) + H(n-2) Si n>1
Dn = 0 si n=0
2 Dn-1 + n + 2n otro caso
tn = 1 si n=0
4 tn-1 - 2n otro caso
an = 2a n 1 a0 = 1
a) Algoritmo de Hanoi
b) Ordenamiento MergeSort (clasificacion)
c) Ordenamiento dicotomico
LABORATORIO
Impresin de nmeros en cualquier base
Construir una aplicacin para hallar leer un numero entero positivo. Cada
digito debera almacenarse en cada nodo de una lista enlazada. La aplicacin
deber mostrar la lista con la direccin de cada nodo.
REFERENCIAS BIBLIOGRAFICAS
a. [HERNANDEZ 2001] Hernandez, R.; Lazaro, J.C.; Dormido, R.; Ros, S.
Estructura de Datos y Algoritmos; Prentice Hall 2001, Madrid Espaa.
b. [BRASSARD 1998] Brassard,G. Bratley,P. Fundamentos de Algoritmia,
Prentice Hall 1998 Madrid
c. [CORTEZ 1999] Cortez Vasquez,Augusto. Matematica Discreta, Edit San
Marcos Lima 2011
d. [CORTEZ 2010] Cortez Vsquez,Augusto. Algortmica, EDit EsVega Lima
Peru 2010.
e. [CORTEZ 2013] Cortez Vasquez,Augusto. Algoritmia, Tecnicas
Algoritmicas, Edit CEPREDIM UNMSM Lima 2013
f. [JAIME 2002] Jaime, Alberto. Estructuras de datos y Algoritmos; Prentice
Hall 2002 Bogota D.C.
g. [JOHNSONBAUGH 1999] Johnsonbaugh Richard Mateamticas Discretas;
Prentice Hall 1999, Pags