El análisis de algoritmos es el estudio de los recursos necesarios para ejecutar un algoritmo, especialmente tiempo, memoria y otros costes computacionales. Suele expresar cómo cambia el uso de recursos con el tamaño de entrada, lo que permite comparar algoritmos mediante complejidad temporal y complejidad espacial.
The determination of the computational complexity of algorithms, that is the amount of time, storage and/or other resources necessary to execute them. Usually, this involves determining a function that relates the length of an algorithm's input to the number of steps it takes (its time complexity) or the number of storage locations it uses (its space complexity).