estructura de datos : cola

37
Estructura de Datos: Cola www.slideshare.net/emergar www.youtube.com/emergaray

Upload: emerson-garay

Post on 22-Jan-2018

909 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Estructura de datos : Cola

Estructura de Datos: Cola

www.slideshare.net/emergar

www.youtube.com/emergaray

Page 2: Estructura de datos : Cola

Una cola (también llamada fila) es una estructura de datos, caracterizada por ser una secuencia de elementos en la que la operación de inserción push se realiza por un extremo y la operación de extracción pop por el otro. También se le llama estructura FIFO (del inglés First In First Out), debido a que el primer elemento en entrar será también el primero en salir. Extraído de: https://es.wikipedia.org/wiki/Cola_(inform%C3%A1tica)

Cola: Concepto

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 3: Estructura de datos : Cola

Para el manejo de los datos cuenta con dos operaciones básicas: adicionar (add), que coloca un objeto al final de la cola, y su operación inversa, retirar o sacar (poll), que retira el primer elemento de la fila. En cada momento sólo se tiene acceso al primer elemento de la fila, es decir, al primer objeto. Extraído de: https://es.wikipedia.org/wiki/Pila_(inform%C3%A1tica)

Cola: Funcionamiento

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 4: Estructura de datos : Cola

Colas circular o anillo: 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. Existen dos operaciones de rotaciones, una en cada sentido, de manera que la cabeza del anillo pasa a ser el elemento sucesor, o el predecesor, respectivamente, de la cabeza actual. https://es.wikipedia.org/wiki/Cola_circular

Cola: Tipos

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola Simple: estructura lineal donde los elementos salen en el mismo orden en que entran.

Page 5: Estructura de datos : Cola

Cola: Tipos

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola Doble o Bicola: son colas en donde los elementos se pueden añadir y quitar por ambos extremos; se les llama DEQUE (Double Ended QUEue). Para representar las bicolas lo podemos hacer con un array circular con Inicio y Fin que apunten a cada uno de los extremos.

Cola de prioridad: En ellas, los elementos se atienden en el orden indicado por una prioridad asociada a cada uno, sin importar el orden en que se agreguen. Si varios elementos tienen la misma prioridad, se atenderán de modo convencional según la posición que ocupen. La prioridad es algún dato de los elementos que permita Ordenarlos.

Page 6: Estructura de datos : Cola

Cola: Historia

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 7: Estructura de datos : Cola

• Cola de los clientes en los bancos y cajeros automáticos

• Cola de programas en espera de ser ejecutados por una computadora

Cola: Usos

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 8: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola Vacía

Page 9: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola Vacía

add

Page 10: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 1 elemento

Page 11: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 1 elemento

add

Page 12: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 2 elementos

Page 13: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 2 elementos

add

Page 14: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 3 elementos

Page 15: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 3 elementos

add

Page 16: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 4 elementos

Page 17: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 4 elementos

add

Page 18: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 5 elementos

Page 19: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 5 elementos

poll

Page 20: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 4 elementos

Page 21: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 4 elementos

Page 22: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 4 elementos

add

Page 23: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 5 elementos

Page 24: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 5 elementos

add

Page 25: Estructura de datos : Cola

Cola: Ejemplo

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 6 elementos

Page 26: Estructura de datos : Cola

• Crear (constructor): crea la cola vacía. • Tamaño (size): regresa el número de elementos de la

cola. • Adicionar (add u offer): añade un elemento a la cola. • Retirar (poll o remove): lee y retira el primer elemento

de la cola. • Leer primero (peek): lee el primer elemento de la cola

sin retirarlo. • Vacía (isEmpty): devuelve cierto si la cola está sin

elementos o falso en caso de que contenga alguno.

Extraído de: https://es.wikipedia.org/wiki/Cola_(inform%C3%A1tica)

Cola: Operaciones

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 27: Estructura de datos : Cola

Cola: Operaciones

Descripción Operación Argumentos Retorno

Adicionar add Object boolean

Retirar el primero poll Ninguno Object

Leer el primero peek Ninguno Object

Verificar si esta vacía isEmpty Ninguno boolean

Cantidad elementos size Ninguno int

Estas Operaciones se implementaran usando la clase LinkedList del paquete java.util

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 28: Estructura de datos : Cola

Cola: Crear

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

LinkedList c = new LinkedList();

Crear (constructor): crea una cola vacía.

Cola Vacía

Page 29: Estructura de datos : Cola

Cola: Tamaño

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

int n = c.size(); n = 0

Tamaño (size): regresa el número de elementos de la cola.

Cola Vacía

Page 30: Estructura de datos : Cola

Cola: Adicionar

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

int j = 92; Integer dato = new Integer(j); c.add(dato);

Apilar (add u offer): añade un elemento a la cola.

Cola c

92

Page 31: Estructura de datos : Cola

Cola: Leer primero

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

int x; Integer dato = (Integer)c.peek(); x = dato.intValue();

x = 92

Leer primero (peek): lee el elemento inicial de la cola sin retirarlo.

Cola c

92

45

65

Page 32: Estructura de datos : Cola

Cola: Tamaño

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

int n = c.size(); n = 3

Tamaño (size): regresa el número de elementos de la cola.

Cola Vacía

92

45

65

Page 33: Estructura de datos : Cola

Cola: Sacar primero

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

int x; Integer dato = (Integer)c.poll(); x = dato.intValue();

x = 92

Leer primero (poll o remove): lee el elemento inicial de la cola y lo retira.

Cola c

92

45

65

Page 34: Estructura de datos : Cola

• Implementación con un Vector

• Implementación sobre una Lista

Cola: Implementaciones

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Page 35: Estructura de datos : Cola

• Imprimir una cola • Hacer la copia de una cola • Invertir una cola • Verificar si esta un elemento • Verificar si son iguales dos colas • Verificar si esta Ordenada {Ascendente, Descendente} • Sumar los valores de dos colas de números enteros

• Simulación de colas en supermercados o cajeros automáticos

• Lista de solicitudes que se atienden en una organización

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola: Ejemplos

Page 36: Estructura de datos : Cola

Cola

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez

Cola con 6 elementos

Page 37: Estructura de datos : Cola

Taller de Ejercicios

2017 www.slideshare.net/emergar Ing. Emerson E. Garay Gómez