Está en la página 1de 22

PRESENTA

Instituto Tecnológico Superior de


Teposcolula

Materia: Estructura de datos.

Evidencias: Exposición Colas.

Docente: Jesús Maldonado Cholula.

Elaborado por: Alexander García Manuel, Ana Belén Ramírez Cruz, Marisol Lara López, Kevin Gabriel Aguilar Vásquez,
Emmanuel Alfredo Montes Días, Jeremy Palma López.

Matriculas: 2220084, 2220075, 2220081, 2220079, 2120048, 2220088.

Carrera: Ingeniería en Sistemas Computacionales.

Grado y Grupo: 3 “A”


PRESENTA

Colas en
Programación
Contenido:

¿Qué son? ¿Cómo se estructura la


cola en programación?

Características. Ejemplo

En que se puede Ventajas y


aplicar. Desventajas

¿Cómo se clasifican?. Conclusión.


¿Qué son?
Las colas en programación son estructuras de datos que
siguen el principio "primero en entrar, primero en salir"
(FIFO, por sus siglas en inglés). Funcionan como una
línea de espera donde los elementos se agregan al final
y se eliminan del principio, como una cola en un
supermercado. Se utilizan para gestionar tareas en un
orden específico, como procesar solicitudes en un
servidor o administrar trabajos en una impresora.
Características
Fuente del dispositivo.
Procesó de llegada.
Mecanismos de servicio.
Disciplina de colas.
Colas en tándem.
En que se puede aplicar:
Gestión de tareas
Cola de impresión
Navegación en un algoritmo de búsqueda
Planificación de procesos:
Sincronización de hilos:
Buffer en comunicación de datos:
Algoritmos de enrutamiento en redes:
Colas de espera en sistemas de atención al cliente
Administración de recursos compartidos
Algoritmos de planificación en sistemas de tiempo
real.
¿Cómo se clasifican?

1 2 3 4 5
COLA COLA DE UN COLA DE COLA COLA DE
ESTÁTICA SOLO PRIORIDAD CIRCULAR BLOQUEO VS.
VS. COLA EXTREMO VS. COLA NO
DINÁMICA COLA DE BLOQUEO
DOBLE
EXTREMO
6 7
COLA DE COLA DE
PRIORIDAD ESPERA VS.
BASADA EN PILA
MONTÍCULOS
COLAS
CIRCULARES
(ANILLOS)

Una cola circular o anillo es una


estructura de datos en la que los
elementos están de forma circular y
cada elemento tiene un sucesor y un
predecesor. Los elementos pueden
consultarse, añadirse y eliminarse
únicamente desde la cabeza del anillo
que es una posición distinguida.
COLAS DE
PRIORIDAD

Una cola de prioridades es un tipo


de dato abstracto similar a una cola
en la que los elementos tienen
adicionalmente, una prioridad
asignada. Hay 2 formas de
implementación:1.Añadir un campo a
cada nodo con su prioridad. Resulta
conveniente mantenerla cola
ordenada por orden de
prioridad.2.Crear tantas colas como
prioridades haya, y almacenar cada
elemento en su cola.
BICOLAS

La bicola o doble cola es un tipo de


cola
especial que permiten la inserción y
eliminación de elementos de ambos
extremos de la cola. Puede
representarse a partir de un vector y
dos
índices, siendo su representación
más
frecuente una lista circular
doblemente
enlazada
BICOLAS DE
ENTRADA
RESTRINGIDA

Son aquellas donde la inserción sólo


se
hace por el final, aunque podemos
eliminar al inicio ó al final.
es aquella que acepté intersecciones
solo al final de la cola y acepta
eliminaciones tanto por el frente
como
en el fin
BICOLAS DE
SALIDA
RESTRINGIDA

Son aquellas donde sólo se elimina


por el final, aunque se puede
insertar
al inicio y al final.
¿Cómo se estructura las
cola en Programación?

Por medio de Métodos Ayuda a los profesores a


Queue: conectar con los alumnos
Para Insertar:
– add(e)
Los métodos para Extraer llamados: Operaciones de las Colas:
– offer(e) “remove()” y “poll()”. Cuando se
intenta extraer un dato de una Cola Al igual que las Pilas, las colas poseen dos operaciones
Para Extraer: que ya está vacía el método imprescindibles que son para añadir elementos o "encolar"
– remove() y para eliminar elementos o "desencolar", al igual que
remove() lanzará una excepción
– poll() poseen operaciones para manipular y mostrar su
como resultado, en cambio el método
Para Consultar el Frente: contenido, las cuales son:
poll() simplemente retornará o
– element() Crear Cola: Inicia la cola como vacía
tomará el valor null.
– peek() Cola vacía: Comprobar si la cola no tiene elementos
Cola llena: Comprobar si la cola está llena de elementos
Frente: Obtiene el elemento frente o primero de la cola
Tamaño de la cola: Número de elementos máximo que puede
contener la cola.
Ventajas
PARA USAR COLA EN
PROGRAMACION
Mantenimiento del orden de llegada
Gestión de tareas y trabajos

Facilita la programación concurrente


Gestión eficiente de recursos
compartidos.
Estructura de datos simple y eficiente

Evita desbordamientos de memoria


Implementación de algoritmos de
búsqueda y recorrido
Colas de prioridad
Desventajas
Dificultad en la eliminación de elementos
intermedios

Limitaciones en la accesibilidad a
elementos:

No permite el acceso directo a un


elemento
Ejemplo de colas en
la vida cotidiana
Ejemplo 1°: Un claro ejemplo de una cola; es cuando vamos a ver una
pelicula al cine, dentro de los cuales se tiene que hacer la espera de una
cola de personas, dentro de los cuales culmple con las condiciones con
las que debe de contar una cola, en sí, porque ?. . . Principalmente
cumple con la regla FIFO, First in, First out, el primero en entrar es el
primero en salir, de esta manera es como podemos contemplar a las
colas de los cines para ver una pelicula, el que se forma primero sera
quien reciba primero su ticket o entrada.
Segundo ejemplo en la vida cotidiana

Cuando las personas asistena a


realizar sus compras al
supermecado y realizan sus pagos
es ahí cundo se pone en práctica lo
que son las colas ya que como bien
observamos el primero de la cola es
el primero en pagar y es el primero
en salir y asi sucesivamente y el
ultimo en ingresar a la cola tiene a
esperar su turno hasta salir .
Ejemplo de la clase cola, codificado
en JAVA

Clase (COLA); Esta clase esta diseñada o creada a fin de poder


contener y procesar los metodos con los que esta cuenta, dado con estos
metodos dentro de esta clase, podemos insertar, o quitar contenido
dentro de la cola, haciendo funcion a la estructura o condición (FIFO),
cada uno de estos metodos contiene una funcion en especial, haciendo
apoyo de los nodos dentro de los mismo, cuya funcion será, la del poder
brindarnos soporte a la obtención de los valores mismos dentro de los
metodos operables, haciendo que el ingreso y extracción de los datos,
esta en funcion del inicio y el final.
Ejemplo de la clase principal,
codificado en JAVA
La clase principal dentro de la codificación en las
clases de ejemplo de como actúan las colas en la
programación, se manda a llamar por medio de
metodos como de objetos, para poder realizar las
acciones correspondientes, por medio de los objetos
mandamos a traer las funciones tanto de extraer
como de imprimir y de insertar dentro de la clase
principal, por medio de un menu que nos indica y nos
da opciones de interactuar directamente con el
usuario a fin de que podamos entender como es el
funcionamiento con los casos correspondientes a la
estructura FIFO, Primero en entrar, primero en salir.
Conclusión
En conclusión, podemos decir que las colas es una variable la cual se basa en
el inicio y fin de una (FIFO) en la cual se estructura a forma de una
secuencia de datos por la que se puede comprender como una cola de la vida
cotidiana haciendo referencia a que los primeros datos en entrar ,siempre
serán los primeros en salir, a diferencia de los datos internos o finales de la
cola en los cuales su estadía puede ser variable ya que pueden ser extraídos o
eliminados a su misma vez siempre y cuando asi se le requiere, de la misma
forma ayuda acomodar los datos que entran dándole un orden. Estos se
deben a que las colas estan diseñadas para devolver los elementos ordenados
tal como llegan y siempre vemos los elementos que están primero al frente o
frente final.
¿Tienes alguna
pregunta?
Referencias
arrietaevelio. (2 de octubre de 2013). slideshare. Obtenido de www.slideshare.com:
https://es.slideshare.net/arrietaevelio/pilas-y-colas-26803229
Berzosa, V. (24 de enero de 2023). quees. Obtenido de quees.com: https://quees.com/cola-
programacion/
cola?, ¿. e. (s.f.). runestone. Obtenido de runestone.academy:
https://runestone.academy/ns/books/published/pythoned/BasicDS/QueEsUnaCola.html
colas, C. d. (s.f.). um. Obtenido de www.um.es: https://www.um.es/or/ampliacion/node3.html
colas, Q. s. (s.f.). hci. Obtenido de hci.uniovi.: http://www.hci.uniovi.es/Products/DSTool/colas/colas-
queSon.html
Ferrer, V. (8 de mayo de 2020). vicentferrer. Obtenido de vicentferrer.com:
https://vicentferrer.com/teoria-de-colas/#:~:text=%E2%80%93%20Cola%20(Queue),-
Es%20el%20elemento&text=Las%20podemos%20clasificar%20en%20cola,por%20la%20tasa%20de%20
abandono.
Mar, b. e. (04 de octubre de 2022). Aprende Programacion Competitiva. Obtenido de
aprende.olimpiada-informatica.org: https://aprende.olimpiada-informatica.org/node/373
programación?, ¿. e. (s.f.). fundamentos. Obtenido de www.fundamentosprogramacion.site:
https://www.fundamentosprogramacion.site/2023/01/que-es-una-cola-en-programacion.html
Roldán, Á. (2021-2022). ciberaula. Obtenido de www.ciberaula.cohttps://www.studocu.com/es-
mx/document/instituto-universitario-del-centro-de-mexico/programacion-orientada-a-objetos/tipos-de-
colas-y-sus-caracteristicas/12848681
m: https://www.ciberaula.com/cursos/java/colas_java.php

También podría gustarte