Home Algoritmos y Estructuras de Datos (VJ1215)

Curso 2023/2024

Solución del ejercicio 18.a del tema 1

Coste temporal en el peor caso: O(log n), siendo n el número que nos pasan.

Coste temporal en el mejor caso: O(1).

Coste espacial en el peor caso: O(log n).

Coste espacial en el mejor caso: O(1).

El peor caso, tanto para el coste temporal como para el coste espacial, se da cuando todas las cifras son pares.

El mejor caso, tanto para el coste temporal como para el coste espacial, se da cuando la cifra más a la derecha es impar.

Consideramos aquí que un entero tiene un coste espacial O(1). El coste espacial en el peor caso se debe a la ocupación de la pila de llamadas cuando hay tantas llamadas activas como cifras tiene n.

Hemos tenido en cuenta que el operador && se evalúa en cortocircuito: si el valor del primer operando es falso, no evalúa el segundo operando y, por tanto, no realiza la llamada recursiva.

No es necesario indicar que el logaritmo es en base 10 al expresar el resultado en notación O, porque aplicando la fórmula de cambio de base de los logaritmos la diferencia entre usar una base u otra es una constante multiplicativa.