La complejidad espacial de un algoritmo es el espacio total (memoria intermedia) utilizado por un algoritmo en tiempo de ejecución con respecto al tamaño de entrada.
- Espacio total = espacio auxiliar + tamaño de entrada
Espacio auxiliar: es el espacio adicional o espacio temporal distinto de la entrada dada utilizada por un algoritmo en tiempo de ejecución.
Consideremos un programa,
- ¿Cuál es la técnica para crear una solución DP iterativa a partir de su solución recursiva?
- ¿Es normal tener un título en CS y no ser capaz de implementar algoritmos simples?
- ¿Qué tan difícil sería para un novato la 'Introducción a los algoritmos' de Thomas H. Cormen?
- ¿Cuál es la aplicación práctica de un gráfico no ponderado?
- ¿Qué hace que NP-hard sea más difícil?
sum (int x, int y, int z) {
int r = x + y + z;
volver r;
}
Requiere 3 unidades de espacio para los parámetros y 1 para la variable local, y esto nunca cambia, por lo que esto es de o (4). También podemos escribirlo como o (1), porque el espacio de contacto se puede representar como o ( 1)
Ahora, consideremos otro ejemplo,
int sum (int a [], int n) {
int r = 0;
para (int i = 0; i <n; ++ i) {
r + = a [i];
}
volver r;
}
Requiere N unidades para a , más espacio para n , r e i , por lo que es O (N).
Si encuentra algo mal, escriba un comentario.