Listas enlazadas
Circulares
- Cruz Gonzalez Jacqueline
- Cruz Tapia Brayan
- Romero Blancas Antonio de Jesus
- Ruiz Martinez Alexandra Lizeth
lista enlazada
Es una estructura dinámica que consta de un número de nodos. Estas listas crecen y decrecen conforme se va ejecutando el programa.
lista enlazada: circular
Es una lista enlazada cuyos nodos están conectados de tal manera que forma un círculo.
Declaración
last -> next último -> siguiente
Mantenemos un puntero externo 'último' que apunta al último nodo en la lista enlazada circular.
Operacionesbásicas
Operaciones
recorrido
supresión
inserción
Inserción
Al final de la lista
Entre la lista
Al principio de la lista
En una listavacía
Supresión
- Implica ubicar el nodo que se debe eliminar y luego liberar su memoria.
- Establecemos los punteros curr y prev y luego eliminamos el nodo curr.
Recorrido
- El recorrido es una técnica de visitar todos y cada uno de los nodos.
- En una lista enlazada circular, comenzamos desde el siguiente del último nodo que es el primer nodo y atravesamos cada nodo. Nos detenemos cuando llegamos una vez más al primer nodo.
Implementación
Producción:
La lista circular vinculada creada :
10 20 30 40 50 60 10
El nodo con datos 10 se elimina de la lista.
La lista circular vinculada después de eliminar 10 es:
20 30 40 50 60 20
Lista circular
insertar lista
insertar nodo
Desplegar lista
ejecución del programa
Listascirculares
ejecución del programa
un pequeño programa
/* ---------- lista_circ.function.h ----------- */ void inicialización (Lista * lista){ lista->inicio = NULL; lista->fin = NULL; lista->tamaño = 0;} /* inserción en una lista vacia */ int ins_lista_circ_vacia(Lista * lista, char *dato){ Elemento *nuevo_elemento; if ((nuevo_elemento = (Elemento *) malloc (sizeof (Elemento))) == NULL) return -1; if ((nuevo_elemento->dato = (char *) malloc (50 * sizeof (char))) == NULL) return -1; strcpy (nuevo_elemento->dato, dato); nuevo_elemento->siguiente = nuevo_elemento; lista->inicio = nuevo_elemento; lista->fin = nuevo_elemento; lista->tamaño<gras>; return 0; }
LISTAS ENLAZADAS: CIRCULARES
desventajas
ventajas
- No hay una marca adecuada para el comienzo o el final de la lista. Una implementación podría terminar en un bucle infinito.
- Tenemos que recorrer toda la lista desde el principio
- Podemos ir a cualquier nodo y atravesar desde cualquier nodo.
- Ir al primer nodo desde el último nodo solo requiere un paso.
aplicación
Un sistema operativo de programación múltiple en el que programa múltiples programas.Ejemplo:Juegos que se juegan con varios jugadores
Conclusiones
Lista enlazada circular:
- Colección de nodos en los que los nodos están conectados entre sí para formar un círculo.
- Representar estructuras o actividades que deben repetirse una y otra vez después de un intervalo de tiempo específico.
- Admiten varias operaciones como inserción, eliminación y recorridos.
¡gracias!
Listas enlazadas: Circulares
JABA Cruz
Created on October 19, 2022
Start designing with a free template
Discover more than 1500 professional designs like these:
View
Visual Presentation
View
Vintage Photo Album
View
Animated Chalkboard Presentation
View
Genial Storytale Presentation
View
Higher Education Presentation
View
Blackboard Presentation
View
Psychedelic Presentation
Explore all templates
Transcript
Listas enlazadas
Circulares
lista enlazada
Es una estructura dinámica que consta de un número de nodos. Estas listas crecen y decrecen conforme se va ejecutando el programa.
lista enlazada: circular
Es una lista enlazada cuyos nodos están conectados de tal manera que forma un círculo.
Declaración
last -> next último -> siguiente
Mantenemos un puntero externo 'último' que apunta al último nodo en la lista enlazada circular.
Operacionesbásicas
Operaciones
recorrido
supresión
inserción
Inserción
Al final de la lista
Entre la lista
Al principio de la lista
En una listavacía
Supresión
Recorrido
Implementación
Producción: La lista circular vinculada creada : 10 20 30 40 50 60 10 El nodo con datos 10 se elimina de la lista. La lista circular vinculada después de eliminar 10 es: 20 30 40 50 60 20
Lista circular
insertar lista
insertar nodo
Desplegar lista
ejecución del programa
Listascirculares
ejecución del programa
un pequeño programa
/* ---------- lista_circ.function.h ----------- */ void inicialización (Lista * lista){ lista->inicio = NULL; lista->fin = NULL; lista->tamaño = 0;} /* inserción en una lista vacia */ int ins_lista_circ_vacia(Lista * lista, char *dato){ Elemento *nuevo_elemento; if ((nuevo_elemento = (Elemento *) malloc (sizeof (Elemento))) == NULL) return -1; if ((nuevo_elemento->dato = (char *) malloc (50 * sizeof (char))) == NULL) return -1; strcpy (nuevo_elemento->dato, dato); nuevo_elemento->siguiente = nuevo_elemento; lista->inicio = nuevo_elemento; lista->fin = nuevo_elemento; lista->tamaño<gras>; return 0; }
LISTAS ENLAZADAS: CIRCULARES
desventajas
ventajas
aplicación
Un sistema operativo de programación múltiple en el que programa múltiples programas.Ejemplo:Juegos que se juegan con varios jugadores
Conclusiones
Lista enlazada circular:
¡gracias!