domingo, 19 de abril de 2020

Estructura de datos dinámicas


1. ¿Cuál es la principal diferencia entre el uso de memoria en forma estática y el uso de memoria dinámica?
La principal diferencia radica en el hecho en que las estructuras de forma estática es que la memoria no es modificada durante la ejecución del programa, es decir el tamaño reservado permanece igual durante todo el tiempo que dure el programa.

Por su parte, en el caso de memoria dinámica, el tamaño es modificado permanentemente, de esa manera, a medida que el proceso va necesitando espacio para más líneas, va solicitando más memoria al sistema operativo para guardarlas. El uso de memoria dinámica es necesario cuando a priori no conocemos el número de datos/elementos a tratar.



2. ¿Con qué otro nombre se conoce la estructura de datos pila?

Se les es conocido como “Stack” que viene del idioma inglés y que literalmente traduce como: “apilar”, “amontonar” o montón. Los métodos de acceso a los datos que contiene siguen un modo LIFO (Last In, First Out)



3. ¿Qué diferencia existe entre una lista simple y una lista doblemente enlazada?

La principal diferencia entre estos dos tipos de listas es que una lista simplemente enlazada solo tiene un apuntador hacia al siguiente nodo, es decir no es capaz de indicarnos cuál es el nodo anterior a la misma. Por el lado contrario, una lista doblemente enlazada está en la capacidad de indicarnos cuál es el nodo anterior y posterior al mismo.
Todo lo anterior se traduce en que en las listas doblemente enlazadas existe la posibilidad de recorrer la lista en dos sentidos, por su parte en las listas simplemente enlazadas solo es posible recorrer las listas en un solo sentido.




4. ¿Cuál es la principal característica de una lista circular?

La principal característica es que en una lista circular el “último” elemento conecta con el “primer” elemento, por lo tanto, existe la posibilidad de recorrer la lista de forma infinita. Así mismo, existe la posibilidad de recorrer los elementos en uno o en dos sentidos, esto dependiendo de la forma en que se programe la misma.
Para recorrer una lista enlazada circular podemos empezar por cualquier nodo y seguir la lista en cualquier dirección hasta que se regrese hasta el nodo original. Desde otro punto de vista, las listas enlazadas circulares pueden ser vistas como listas sin comienzo ni fin.




No hay comentarios:

Publicar un comentario