Si lo entiendo correctamente, un algoritmo que calcula el valor de una función real tiene una complejidad computacional si se cumple lo siguiente: Cuando calculamos con precisión requiere del orden de pasos .
Sin embargo, ¿qué sucede si tenemos un algoritmo que primero "encuentra un algoritmo más eficiente para calcular " y luego calcula ?
En otras palabras, ¿qué pasa si tenemos un algoritmo que hace lo siguiente:
Encuentre un algoritmo eficiente para calcular .
use para calcular .
En ese caso, ya no se puede hablar de la tiempo de cálculo que se necesitaría para calcular por ejemplo, debido a que depende totalmente de si el algoritmo ya ha encontrado algoritmo . En otras palabras, el tiempo de cálculo requerido para calcular si 5 es el primer número compilado es mucho mayor que el tiempo de cálculo requerido para calcular f (5) después de que f (3) ya está calculado.
Mi pregunta es, ¿hay un concepto / teoría sobre este tipo de algoritmo que primero encuentre otro algoritmo antes de calcular una función? Específicamente me pregunto sobre el análisis de la complejidad computacional de tales algoritmos.