Tarea 2 de Análisis y Diseño de Algoritmos
Trimestre 2016 Otoño
Entrega: 10 de octubre de 2016 en clase.
- [2 puntos] Demuestra que el siguiente algoritmo iterativo para
calcular la exponenciación yz es correcto:
potencia(y,
z)
- x := 1
- mientras z > 0
- x := x*y
- z := z-1
- regresa x
- [2 puntos] Demuestra que el siguiente algoritmo recursivo para
calcular la exponenciación yz es correcto:
potencia(y,
z)
- si z = 0 entonces regresa 1
- si z es impar entonces regresa potencia(y2,
z/2)*y
- en caso contrario regresa potencia(y2, z/2)
Debes suponer que la división z/2 regresa sólo la parte entera
de la división.
- [1 punto] Ordena las siguientes cinco funciones de menor a
mayor crecimiento asintótico: 100n1/2,
4n, n2 log n, n!, log2 n.