Listas y Colas

7
INGENIERÍA DE COMPUTACIÓN Y SISTEMAS ESTRUCTURAS DE DATOS Y DE LA INFORMACION Profesor: Ing. INFANTES QUIROZ, Henry Presentado por: Durn! R"!r#gue$, I%&" Dr'(ng. L)*e$ Qu(%", Augu+%" Qu(+*e S&! , -un -"+ . Z/&e% P"n0e Henry A&e1n!er TRU-ILLO 2 PER3 4567

description

listas y colas

Transcript of Listas y Colas

INGENIERA DE COMPUTACIN Y SISTEMAS

ESTRUCTURAS DE DATOS Y DE LA INFORMACION

Profesor:Ing. INFANTES QUIROZ, Henry

Presentado por:Durand Rodrguez, Italo Darwing.Lpez Quito, AugustoQuispe Saldaa, Juan Jos.Zavaleta Ponce Henry Alexander

TRUJILLO PER2015

LISTAS ORDENADASUna lista lineal es un conjunto de elementos de un tipo dado que se encuentranordenados y pueden variar en nmero. Permite el recorrido de todos y cada uno de sus elementos, sin saltear ninguno y en forma ordenada.Para ordenar listas en java usando dos mtodos estticos de la clase java.util.Collections e implementando dos interfaces Comparable y Comparator.Cuando se crea una clase de algn tipo, especificar el orden natural de los objetos de esa clase cuando se encuentran en una lista, simplemente implementando el interfaz Comparable que declara el mtodo:intcompareTo(Objecto);

ste mtodo compara steobjeto con el objeto recibido como parmetro. ste mtodo ha de devolver un valor negativo si ste objeto es menor que el recibido, 0 si son iguales o un valor positivo si es mayor, segn el orden natural de los objetosEjemplos Gua telefnica Lista de asistencia a un curso ndice de un libro Listado de compras Listado de ingredientes de una recetaQu beneficios tienen las listas? Acceso aleatorio. Estn ordenadas (Podemos usar Colections.sort() para ordenar los elementos siguiendo el criterio que queramos). Podemos aadir / eliminar elementos sin ninguna restriccin. Tienen un iterador especial ListIterator que permite modificar la lista en cualquier direccin. Siguen la notacin de los arrays, por lo que son fciles de comprender.Qu problemas tienen las listas?Bajo rendimiento en operaciones especializadas respecto a otras colecciones.

Tipos de Lista ArrayList LinkedList Vector CopyOnWriteArrayList

DEMOSTRACIONlistaOrdenada.insertar(10)

listaOrdenada.insertar(5)

listaOrdenada.insertar(7)

listaOrdenada.insertar(50)

COLAS DE PRIORIDAD

Una cola de prioridades es una estructura de datos en la que los elementos se atienden en el orden indicado por una prioridad asociada a cada uno. Si varios elementos tienen la misma prioridad, se atendern de modo convencional segn la posicin que ocupen.VENTAJASLAS VENTAJAS DE UNA COLA DE PRIORIDAD SON: Que cuando se solicite un dato o un proceso de mayor relevancia que el que est a punto de salir, se la puede tomar de manera que no exista la necesidad de esperar hasta que le toque su turno en la cola, si no que por ser ms importante que los otros, se le asigna una mayor prioridad.EJEMPLOSHay situaciones en las que se nos atiende no por FILA sino por PRIORIDAD. Sala de emergencias. Cola para realizar operaciones en el Banco. Cuando se conecta una memoria USB a la computadora, el sistema le da mayor PRIORIDAD ya que es ms importante que otros procesos. Cola para matricularse en la Universidad.

CARACTERISITICASLas colas de prioridad las mismas operaciones de una cola, pero tiene un caso especial, estas podemos utilizarlas en el orden que necesitemos (priorizarlas).Las colas de prioridad nos permiten aadir elementos en cualquier orden y recuperarlos de menor a mayor.Ejemplo en un hospital, los enfermos llegan en forma de cola pero se atienden en forma de quien este mas enfermo.

TIPOS

Existen dos tipos

COLAS DE PRIORIDAD CON ORDENAMIENTO ASCENDENTE: Se insertan de forma normal como en una cola pero a la hora de extraerlos se extrae el elemento de menor prioridad.COLA DE PRIORIDAD CON ORDENAMIENTO DE DESCENDENTE: Son iguales que las colas de prioridad con ordenamiento ascendente pero al extraer el elemento se extrae el de mayor prioridad.

IMPLEMENTACIONExisten dos modos de implementacin. Aadir un campo a cada nodo con su prioridad. Resulta conveniente mantener la cola ordenada por orden de prioridad. Crear tantas colas como prioridades haya, y almacenar cada elemento en su cola.

Grafico 1

GRAFICO 2