 ##  [Complejidad Temporal Algorítmica](/es/node/57636) 

 Definición

Una caracterización de la tasa de crecimiento del tiempo de ejecución de un algoritmo en función del tamaño de la entrada, típicamente expresada asintóticamente (p. ej., Big O) para comparar escalabilidad.

 

 

 

 

 

 





## Principio

Principio

El uso de recursos se abstrae en funciones del tamaño de entrada de modo que los términos dominantes determinan el comportamiento asintótico, permitiendo comparaciones independientes de constantes dependientes de la máquina.

 

 

 

 

 





## Demostración

Demostración

Quicksort tiene complejidad temporal media O(n log n), mientras que el ordenamiento por inserción tiene peor caso O(n^2); para n grandes, Quicksort escala mejor a pesar de factores constantes.

 

 

 

 

## Aplicación incorrecta

Aplicación incorrecta

Usar Big O como tiempo exacto de ejecución, ignorar las distinciones entre caso medio y peor caso, o seleccionar algoritmos únicamente por clase asintótica cuando importan constantes y distribuciones de entrada.

 

 

 

 

 





## Consecuencia

Consecuencia

Su uso apropiado informa la elección de algoritmos, predice tendencias de rendimiento para entradas grandes y guía los compromisos teóricos de complejidad en diseño y optimización.

 

 

 

 

## Inversión

Inversión

Centrarse exclusivamente en factores constantes y microbenchmarks sin considerar el crecimiento asintótico, lo que puede ocultar una mala escalabilidad para entradas grandes.

 

 

 

 

 





## Límite

Límite

Se refiere al tiempo como un recurso abstracto medido respecto al tamaño de la entrada; excluye detalles dependientes de la implementación, optimizaciones específicas de hardware y recursos no temporales como memoria o energía (salvo inclusión explícita).

 

 

 

 

 





## Tensión semántica

Tensión semántica

Suele confundirse con tiempo de ejecución empírico o 'eficiencia'; la complejidad temporal es una abstracción asintótica basada en un modelo, no una métrica de rendimiento exacta.

 

 

 

 

 





## Síntesis

Síntesis

La complejidad temporal algorítmica es la descripción asintótica de cómo crece el tiempo de ejecución de un algoritmo con el tamaño de la entrada, usada para evaluar escalabilidad y guiar la elección de algoritmos bajo modelos de coste idealizados.