Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ESTRUCTURA DE DATOS
AVO 2021
OPERACIONES
AVO 2021
COMPORTAMIENTO: FIFO
First In First Out
El primer nodo que entra es el primero en salir
AVO 2021
COLA VACÍA
Una Cola sin nodos es llamada una Cola vacía.
AVO 2021
PUSH
En una cola vacía, el nodo insertado será
tanto el primero como el último de la Cola.
AVO 2021
COLA CON 1 NODO
Cada nodo conoce sólo el nodo detrás de él.
La operación sería:
AVO 2021
PUSH
Insertar un nodo en una Cola que ya tiene nodos, se
realiza detrás del último nodo en la Cola.
ultimo primero
3 5
NULL NULL
AVO 2021
PUSH
El último nodo debe apuntar al nuevo:
ultimo primero
3 5
NULL
AVO 2021
COLA CON 2 NODOS
El nuevo deber ser ahora el último:
ultimo = ultimo -> retornaTuDetras();
AVO 2021
PUSH
Insertar un nodo en una Cola que ya tiene nodos, se
realiza detrás del último nodo en la Cola.
ultimo primero
7 3 5
NULL NULL
AVO 2021
PUSH
El último nodo debe apuntar al nuevo:
ultimo primero
7 3 5
NULL
AVO 2021
COLA CON 3 NODOS
El nuevo deber ser ahora el último:
ultimo = ultimo -> retornaTuDetras();
AVO 2021
PUSH
Insertar un nodo en una Cola que ya tiene nodos, se
realiza detrás del último nodo en la Cola.
ultimo primero
-4 7 3 5
NULL NULL
AVO 2021
PUSH
El último nodo debe apuntar al nuevo:
ultimo primero
-4 7 3 5
NULL
AVO 2021
COLA CON 4 NODOS
El nuevo deber ser ahora el último:
ultimo = ultimo -> retornaTuDetras();
ultimo primero
-4 7 3 5
NULL
AVO 2021
POP
Si la Cola NO está vacía, el primer nodo en la Cola será el único que pueda sacarse.
ultimo primero
-4 7 3 5
NULL
AVO 2021
POP
Se guardan copias tanto del dato dentro del primer nodo como de su dirección:
aux =primero;
d = primero -> retornaTuDato();
ultimo primero
-4 7 3 5
NULL aux
5 d
AVO 2021
POP
El nodo detrás del actual primero será el nuevo primero, y se elimina el viejo primero:
ultimo primero
-4 7 3
NULL 5
aux
5 d
AVO 2021
COLA CON 3 NODOS
La operación completa es:
aux =primero;
d = primero -> retornaTuDato();
primero = primero -> retornaTuDetras();
delete aux;
ultimo primero
-4 7 3
NULL
5 d
AVO 2021
POP
Si la Cola NO está vacía, el primer nodo en la Cola será el único que pueda sacarse.
ultimo primero
-4 7 3
NULL
AVO 2021
POP
Se guardan copias tanto del dato dentro del primer nodo como de su dirección:
aux =primero;
d = primero -> retornaTuDato();
ultimo primero
-4 7 3
NULL aux
3 d
AVO 2021
POP
El nodo detrás del actual primero será el nuevo primero, y se elimina el viejo primero:
ultimo primero
-4 7
3
NULL aux
3 d
AVO 2021
POP
La operación completa es:
aux =primero;
d = primero -> retornaTuDato();
primero = primero -> retornaTuDetras();
delete aux;
ultimo primero
-4 7
NULL
3 d
AVO 2021
PUSH
Insertar un nodo en una Cola que ya tiene nodos, se
realiza detrás del último nodo en la Cola.
ultimo primero
9 -4 7
NULL NULL
AVO 2021
PUSH
El último nodo debe apuntar al nuevo:
ultimo primero
9 -4 7
NULL
AVO 2021
COLA CON 3 NODOS
El nuevo deber ser ahora el último:
ultimo = ultimo -> retornaTuDetras();
AVO 2021
POP
Si la Cola NO está vacía, el primer nodo en la Cola será el único que pueda sacarse.
ultimo primero
9 -4 7
NULL
AVO 2021
POP
Se guardan copias tanto del dato dentro del primer nodo como de su dirección:
aux =primero;
d = primero -> retornaTuDato();
ultimo primero
9 -4 7
NULL aux
7 d
AVO 2021
POP
El nodo detrás del actual primero será el nuevo primero, y se elimina el viejo primero:
ultimo primero
9 -4
7
NULL aux
7 d
AVO 2021
POP
La operación completa es:
aux =primero;
d = primero -> retornaTuDato();
primero = primero -> retornaTuDetras();
delete aux;
ultimo primero
9 -4
NULL
7 d
AVO 2021
POP
Si la Cola NO está vacía, el primer nodo en la Cola será el único que pueda sacarse.
ultimo primero
9 -4
NULL
AVO 2021
POP
Se guardan copias tanto del dato dentro del primer nodo como de su dirección:
aux =primero;
d = primero -> retornaTuDato();
ultimo primero
9 -4
NULL aux
-4 d
AVO 2021
POP
El nodo detrás del actual primero será el nuevo primero, y se elimina el viejo primero:
ultimo primero
9
-4
NULL aux
-4 d
AVO 2021
POP
La operación completa es:
aux =primero;
d = primero -> retornaTuDato();
primero = primero -> retornaTuDetras();
delete aux;
ultimo primero
9
NULL
-4 d
AVO 2021
POP
Si la Cola NO está vacía, el primer en la Cola será el único que pueda sacarse.
Si sólo hay un nodo en la cola, tras eliminarlo, no habrá ningún nodo que sea el primero;
igualmente, no habrá ningún nodo que sea el último.
ultimo primero
9
NULL
AVO 2021
POP
La operación será:
delete primero;
primero = NULL;
ultimo = NULL;
ultimo primero
9
NULL
AVO 2021
COLA VACÍA
Una Cola sin nodos es llamada una Cola vacía.
AVO 2021