ACTIVIDAD 2

Listas Simplemente Ligadas

Actividad:

1. Definición de listas simplemente ligadas

2. Que procesos se pueden realizar con las listas simplemente ligadas

3. Ejemplos de listas simplemente ligadas

1. Definición de listas simplemente ligadas 

Una lista enlazada o encadenada es un conjunto de elementos en los que cada elemento contiene la posición (o dirección ) del siguiente elemento de la lista. Cada elemento de la lista debe tener al menos dos campos: un campo que contiene el valor del elemento y un campo( enlace, link) que contiene la posición del siguiente elemento, es decir su conexión, enlace o encadenamiento. Los elementos de una lista son enlazados por medio de los campo enlaces.

Tomado de: S, J. (2015, 8 febrero). LISTAS SIMPLEMENTE LIGADAS - Algoritmos. sites.google.com. https://sites.google.com/site/algoritmosjls/listas-simpl 

Una lista enlazada simple es una estructura de datos en la que cada elemento apunta al siguiente. De este modo, teniendo la referencia del principio de la lista podemos acceder a todos los elementos de la misma. La figura 1 representa esta estructura de datos. 

Tomado de: Listas enlazadas simples. (2011). https://www.it.uc3m.es/. https://www.it.uc3m.es/java/2011-12/units/pilas-colas/guides/2/guide_es_solution.html

 Aporte Personal

Las listas simplemente ligadas juegan un papel muy  importante en la estructuración de datos debido a que se compone de nodos de elementos y cada nodo se separa en dos campos, que son llamados el campo de datos  y el campo de liga. Las listas generalmente se componen varios nodos y cada nodo contiene los campos de datos y liga. Los nodos se relacionan entre si por medio de un puntero que las interconectan y dicho recorrido finaliza en el nodo que contenga "NULL" en su puntero.

Tomado de: Pascual, J. P. (2021, 14 agosto). Listas simplemente enlazadas (Linked List). analisisyprogramacionoop.blogspot.com. https://analisisyprogramacionoop.blogspot.com/2017/07/lista-simplemente-enlazada-C-sharp.html

Tomado de: Estructuras de datos - 2. Listas enlazadas: Teoría. (2015, 6 octubre). [Vídeo]. YouTube. https://www.youtube.com/watch?v=0NzAFk1CwaQ

Aporte Personal

Para la implementación de listas simplemente ligadas se deben tener en cuenta algunos puntos que le dan el sentido al funcionamiento de estas. La función de esta lista es representar una secuencia de la datos, estas secuencias no se pueden representar ordenadamente, sin embargo, las listas simplemente ligadas permiten realizar una estructuras de datos dinámica debido a que permiten cambiar el tamaño de memoria mediante la proporción de un dato. La representación de las lista de elementos de las listas simplemente ligadas se relacionan con las colas teniendo en cuanta la interconexión que realizan los punteros.

2. Que procesos se pueden realizar con las listas simplemente ligadas 

En las listas simplemente ligadas se pueden realizar los siguientes procedimientos:

  1. Insertar: inserta un nodo con dato x en la lista, pudiendo realizarse esta inserción al principio o final de la lista o bien en orden.
  2. Eliminar: elimina un nodo de la lista, puede ser según la posición o por el dato.
  3. Buscar: busca un elemento en la lista.
  4. Localizar: obtiene la posición del nodo en la lista.
  5. Vaciar: borra todos los elementos de la lista

Tomado de: Estructuras de datos: listas enlazadas, pilas y colas. (2002). calcifer.org. https://calcifer.org/documentos/librognome/glib-lists-queues.html

En algunas ocasiones podemos desear recorrer la lista hacia adelante y hacia atrás, o dado un elemento, podemos desear conocer rápidamente los elementos anterior y siguiente. En tales situaciones podríamos desear darle a cada celda sobre una lista un puntero a las celdas siguiente y anterior en la lista.

Otra ventaja de las listas doblemente enlazadas es que podemos usar un puntero a la celda que contiene el i-ésimo elemento de una lista para representar la posición i, mejor que usar el puntero a la celda anterior aunque lógicamente, también es posible la implementación similar a la expuesta en las listas simples haciendo uso de la cabecera. El único precio que pagamos por estas características es la presencia de un puntero adicional en cada celda y consecuentemente procedimientos algo más largos para algunas de las operaciones básicas de listas.

Tomado de: G, A., & A, M. (s. f.). LISTAS DOBLEMENTE-ENLAZADAS. ccia.ugr.es. Recuperado 20 de agosto de 2021, de https://ccia.ugr.es/%7Ejfv/ed1/tedi/cdrom/docs/ldoble.html

Tomado de: latincoder. (2014, 25 marzo). Listas enlazadas pt 1 - Introducción e implementación nodos (Estructuras de datos en Java) [Vídeo]. YouTube. https://www.youtube.com/watch?v=9q758AJ1nck

Aporte Personal

Las listas simplemente ligadas nos permite interactuar de forma dinámica en las listas, donde nos permite insertar o eliminar un nodo con determinados datos, por lo cual se deduce que las listas doblemente ligadas poseen una estructura de datos dinámica. Para la implementación de los nodos se deben tener en cuenta el seguimiento de los punteros para crecer la lista definida o indefinidamente. Adicionalmente por medio de programas de código podemos implementar las listas doblemente ligadas y conocer mas fondo los procesos.

3. Ejemplos de listas simplemente ligadas 

Se comparten los siguientes ejemplos

Número 1:

Se observa un puntero que va a apuntar al primer elemento que se ingresa y otro puntero que apuntará al último que será NULO.

Cuando tenemos una lista de la siguiente manera, cada puntero apuntara al nodo siguiente y el puntero de la última lista como no tiene a donde apuntar, entonces apuntara a NULO.

Para acceder a un nodo se utiliza la anterior con excepción del primero (no tiene a nadie antes) al que se tiene que acceder a través de un puntero externo a la lista, entonces se usa los punteros INICIO que es el que apunta constantemente al primero y el puntero ultimo que es el que apunta constantemente al último.

Tomado de: Naolly Dimeisons, Monografias.com. (2014). Listas Enlazadas - Monografias.com. www.monografias.com. https://www.monografias.com/trabajos101/las-istas-enlazadas/las-istas-enlazadas.shtml


Número 2:

Ejemplo de la función

int ins_en_lista_vacia (Lista *lista, char *dato);
La función devuelve 1 en caso de error, si no devuelve 0.
Etapas:

  • asignación de memoria para el nuevo elemento
  • rellenar el campo de datos del nuevo elemento
  • el punterosiguientedel nuevo elemento apuntará hacia NULL (ya que la inserción es hecha en una lista vacía se utiliza la dirección del punteroinicioque vale NULL)
  • los punterosinicioyfinapuntaran hacia el nuevo elemento
  • el tamaño es actualizado.

Tomado de: Márquez Martínez, M. (s. f.). Operaciones en las Listas Enlazadas. cidecame.uaeh.edu.mx. Recuperado 27 de agosto de 2021, de https://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro9/operaciones_en_las_listas_enlazadas.html

Aporte Personal

En los ejemplos anteriormente vistos se pueden observar un poco de los procedimientos que se deben realizar para ejecutar cada una de las acciones que se pueden realizar en la listas doblemente ligadas como lo son, eliminar un nodo o insertar un nodo incluyen un proceso interno el cual lo podemos interpretar por medio de pseudocódigo y se aplica en ambientes de estructuración de datos que se definen los parámetros de memoria y a partir de las necesidades se definen cada una de las interacciones y se ejecutan cada una de las acciones.

sindy-valencia.webnode.com.co
Creado con Webnode
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar