NO ENTIENDO POR QUE ALGUNAS ASIGNACIONES LAS EXCLUYE , TAMPOCO ENTIENDO BIEN LO DEL ESPACIO AUXILIAR

Jorge Méndez Ortega

Jorge Méndez Ortega

Pregunta
studenthace 3 años

NO ENTIENDO POR QUE ALGUNAS ASIGNACIONES LAS EXCLUYE , TAMPOCO ENTIENDO BIEN LO DEL ESPACIO AUXILIAR

1 respuestas
para escribir tu comentario
    Marcelo Arias

    Marcelo Arias

    teacherhace 3 años

    ¡Hola Jorge! El espacio auxiliar es la complejidad espacial menos el espacio ocupado por el tamaño de entrada.

    Por ejemplo si un algoritmo ordena un arreglo de

    n
    números, este arreglo de números al pasar como dato de entrada representa un O(n) en complejidad espacial. Este O(n) representa el espacio ocupado por el tamaño de entrada.

    Después de eso, si creamos un nuevo arreglo dentro de nuestro algoritmo, estamos añadiendo otra

    n
    a la complejidad espacial. Y esta
    n
    , representa el espacio auxiliar.

    Tamaño generado por el dato de entrada: O(n) Tamaño generado por el espacio auxiliar: O(n)

    La complejidad espacial (dato de entrada + auxiliar) sería de O(2n), que simplificado será O(n).

    Si tuviésemos otro algoritmo que ordena un arreglo de

    n
    números, pero este otro algoritmo no crea un nuevo arreglo, por lo tanto no le añade más espacio auxiliar, tendríamos.

    Tamaño generado por el dato de entrada: O(n) Tamaño generado por el espacio auxiliar: O(1)

    La complejidad espacial (dato de entrada + auxiliar) sería también de O(n).

    Complejidad Espacial = Espacio usado en los dato de entrada + Espacio que se use dentro del algoritmo.

Curso de Complejidad Algorítmica con JavaScript

Curso de Complejidad Algorítmica con JavaScript

Analiza y optimiza algoritmos con JavaScript. Aprende a evaluar su eficiencia en términos de tiempo y espacio. Comprende cómo seleccionar el mejor algoritmo para mejorar el rendimiento del software.

Curso de Complejidad Algorítmica con JavaScript
Curso de Complejidad Algorítmica con JavaScript

Curso de Complejidad Algorítmica con JavaScript

Analiza y optimiza algoritmos con JavaScript. Aprende a evaluar su eficiencia en términos de tiempo y espacio. Comprende cómo seleccionar el mejor algoritmo para mejorar el rendimiento del software.