Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Julio, 2022
Parte X
2
Pilas y Colas en
Estructura de Datos
Colas
4
Colas
5
Colas
6
Colas
7
Colas
8
Colas
9
Colas
l Veamos un ejemplo.
10
Colas
12
Colas
13
Colas
14
Colas
l La diferencia es la siguiente:
l Hay un mostrador de boletos donde la gente viene,
compra sus boletos y se va.
l Las personas ingresan a una fila (cola) para llegar al
mostrador de boletos de manera organizada.
l La persona que ingrese primero a la cola, obtendrá
el boleto primero y abandonará la cola.
l La siguiente persona que ingrese a la cola recibirá
el boleto después de la persona que está frente a él.
15
Colas
l La diferencia es la siguiente:
16
Colas
17
Colas
18
Colas
19
Colas
20
Ahora
Un pequeño caso
Muestra warnings
21
Colas
#include <stdio.h>
# define SIZE 100
void enqueue();
void dequeue();
void show();
int inp_arr[SIZE];
int Rear = - 1;
int Front = - 1;
main()
{
int ch;
while (1)
{
printf("1.Poner en Cola\n");
printf("2.Sacar de Cola\n");
printf("3.Mostrar Elementos en Cola\n");
printf("4.Salir\n");
printf("Seleccione su opción : ");
scanf("%d", &ch);
22
Colas
switch (ch)
{
case 1:
enqueue();
break;
case 2:
dequeue();
break;
case 3:
show();
break;
case 4:
exit(0);
default:
printf("Elección incorrecta \n");
}
}
}
23
Colas
void enqueue() //En Cola
{
int insert_item;
if (Rear == SIZE - 1)
printf("Sobrecarga \n");
else
{
if (Front == - 1)
Front = 0;
printf("Elemento a ser insertado en la Cola\n : ");
scanf("%d", &insert_item);
Rear = Rear + 1;
inp_arr[Rear] = insert_item;
}
}
24
Colas
void dequeue() //Sacar de la Cola
{
if (Front == - 1 || Front > Rear)
{
printf("Bajo Flujo \n");
return ;
}
else
{
printf("Elemento a borrar de la Cola: %d\n", inp_arr[Front]);
Front = Front + 1;
}
}
25
Colas
void show() //Mostrar Elementos
{
if (Front == - 1)
printf("Cola Vacía \n");
else
{
printf("Cola: \n");
for (int i = Front; i <= Rear; i++)
printf("%d ", inp_arr[i]);
printf("\n");
}
}
26
Colas
27
Ahora
No hay Tarea Adicional
28
Ahora
No hay Tarea Adicional
29