SlideShare una empresa de Scribd logo
1 de 28
Listas, Pilas y ColasEstructura de Datos(Unibe) Elias Gregorio PeñaEvertzMatricula 10-1170
Con relación a la Estructura LISTA Indicar objetos reales que se puedan modelar con dicha estructura. Listas de Ordenes de visitas (hospital…) Lista de aplicaciones Lista de pacientes
Una lista es una estructura de datos secuencial.	 Una manera de clasificarlas es por la forma de acceder al siguiente elemento: - Lista densa: la propia estructura determina cuál es el siguiente elemento de la lista.   Ejemplo: un array.- Lista enlazada: la posición del siguiente elemento de la estructura la determina el elemento actual. Es necesario almacenar al menos la posición de memoria del primer elemento. Además es dinámica, es decir, su tamaño cambia durante la ejecución del programa. Definiciones de la misma  LISTA
Definiciones de la misma  LISTA Las Listas son secuencias de 0 o más elementos de un tipo de datos almacenado en memoria. Son estructuras lineales donde cada elemento de una lista excepto el primero tiene un único predecesor y cada elemento de la lista excepto el ultimo tiene un sucesor.  Gráficamente:
TAD que modele las LISTAS. Nombre: TAD Lista Invariante: n/a Operaciones: crearLista() */ Devuelve un valor del tipo pila preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/ 	Precondiciones: N=0 	Pos condiciones: Lista creada
insertar(crearLista, x pos) */ mediante este método se insertan datos a la Lista ya creada. Inserta elemento x en pos */ 	Precondiciones: pos != null 	Pos condiciones: insertarLista completado (dato 	insertado en Lista) 	FIN():  */Retorna la posición del último elemento, en otras palabras el “fin” de la lista, también se puede considerar con el tamaño de la lista. Sí la lista está vacía retorna una posición invalida que podría ser -1. */  	Precondiciones: n/A 	Pos condiciones: operación finalizada   ….TAD que modele las LISTAS.
….TAD que modele las LISTAS. Siguiente(pos) */con este método se Retorna pos + 1, si pos es 	igual o 	mayor a FIN(), retorna FIN(). */ 	Precondiciones: pos != 0 	Pos condiciones: retorna pos anterior(pos) */con este método se Retorna pos – 1. */ 	Precondiciones: pos != 0 	Pos condiciones: retorna pos   limpiar(pos) */Limpia la lista y Finaliza FIN()*/ 	Precondiciones: n…n+1, pos = 0 	Pos condiciones: Lista vacia…
Relacionar el concepto de VENTANA con el de Lista. Una ventana es un área visual, normalmente de forma rectangular, que contiene algún tipo de interfaz de usuario, mostrando la salida y permitiendo la entrada de datos para uno de varios procesos que se ejecutan simultáneamente.  Y un Consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias (punteros) al nodo anterior o posterior.
Relacionar el concepto de VENTANA con el de Lista. El principal beneficio de las listas enlazadas respecto a los array convencionales es que el orden de los elementos enlazados puede ser diferente al orden de almacenamiento en la memoria o el disco. La relación es que con ambos términos nos referimos a manipulación de datos sin importar el orden de los mismos, solo el acceso y su modificación.
Describir las implementaciones de Listas: Para representar en lenguaje C esta estructura de datos se utilizarán punteros, un tipo de datos que suministra el lenguaje. Se representaráunalistavacía con la constante NULL. Se puededefinir la listaenlazada de la siguientemanera: struct lista { int clave; struct lista *sig; };
… Describir las implementaciones de Listas:  e1.-  Vectores Utilizando una estructura de datos estática arreglo para representar e implementar el TDA LISTAS. Asumamos que los ELEMENTOS que contiene la LISTA son representados por el tipo ENTERO. La cantidad de ELEMENTOS que puede contener la LISTA tiene un máximo de n ELEMENTOS. Por lo que la representación formal de este tipo se define de la siguiente manera: Tipo LISTA= arreglo [1..n] de ENTEROS; VarL : LISTA;
… Describir las implementaciones de Listas:  Implementación Procedimiento: Operaciones básicas…  LISTA_VACÏA (Var L :LISTA) var i : ENTERO;  principio  Para i := 1 hasta n hacer L[ i ]:= 0;  fin; Función ES_VACÍA(L :LISTA) : LÓGICO  principio  Si L[ 1 ] = 0 entonces ES_VACÏA := Verdad  Sino ES_VACÏA := Falso;  Fin;
… Describir las implementaciones de Listas:  Procedimiento Insertar (Var L :LISTA, p: POSICIÓN, e : ENTERO)  var i : ENTERO;  principio  	Si L [p] <> 0 entonces mientras (i <=n) y ( L [i ] <> 0 )  hacer    principio  sig := l[p]; l[i] := e; e := sig;  	fin;  	l [ i ] := e;  fin;
… Describir las implementaciones de Listas:  e2.- Listas doblemente enlazadas Una lista enlazada es una de las estructuras de datos fundamentales, y puede ser usada para implementar otras estructuras de datos. Consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias (punteros) al nodo anterior o posterior. El principal beneficio de las listas enlazadas respecto a los array convencionales es que el orden de los elementos enlazados puede ser diferente al orden de almacenamiento en la memoria o el disco, permitiendo que el orden de recorrido de la lista sea diferente al de almacenamiento.
Son listas que tienen un enlace con el elemento siguiente y con el anterior. Unaventajaquetienenesquepuedenrecorrerse en ambos sentidos, ya sea paraefectuarunaoperación con cadaelemento o parainsertar/actualizar y borrar. La otraventajaesquelasbúsquedas son algomásrápidaspuestoque no hacefaltahacerreferencia al elemento anterior. Su inconvenienteesqueocupanmásmemoriapornodoqueunalista simple. … Describir las implementaciones de Listas:
Mecanismos para implementar las listas. En el lenguaje C se utiliza los llamados punteros  para representar esta estructura de datos. En java se encuentra un paquete completo en java.util de donde se pueden utilizar las listas, como un tipo abstracto de datos, este tipo de estructura de datos también se utiliza a partir y/o como una interfaz.
Con relación a la Estructura PILA:
Indicar objetos reales que se puedan modelar con dicha estructura. Memoria de una pc 	Caja de objetos ,[object Object],Una  pila es un caso especial de lista en la cual todas las inserciones y supresiones tienen lugar en un extremo determinado llamado tope.
Definiciones de Pila. A las pilas se les llama también listas LIFO (last-in first-out) o listas “primero en entrar, primero en salir”. En el TDA Pila no se definen operaciones de posicionamiento en la pila. Esto es debido a que todas las operaciones de acceso se realizan en la misma posición, el tope de la pila.
TAD que modele las PILAS. Nombre: TAD Pila Invariante: n<>0 Operaciones: crearPila() */ Devuelve un valor del tipo pila preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/ 	Precondiciones: N=0 	Pos condiciones: pila creada
insertarPila(crearPila) */ mediante este método se insertan datos a la pila ya creada. Con las pilas se usa el método push para insertar*/ Precondiciones: pila <> null 	Pos condiciones: insertarPila completado (datos insertados en pila) borrarPila() */con este método se elmina cierta pila de datos */ 	Precondiciones: pila <> null 	Pos condiciones: pila eliminada
Con relación a la Estructura COLA:
Varias definiciones Cola. Una cola 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 FirstOut), debido a que el primer elemento en entrar será también el primero en salir. Una cola es también una estructura de datos lineal en donde las eliminaciones se realizan por uno de sus extremos que normalmente se llama frente, y las inserciones se realizan por el otro extremo que normalmente se llama final. A estas estructuras se les llama FIFO (First In FirstOut).
TAD que modele las COLAS. Nombre: TAD COLA Invariante: n/a Operaciones: crearCola() */ Devuelve un valor del tipo cola preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/ 	Precondiciones: N=0 	Pos condiciones: cola vacia creada
insertarCola(crearCola) */ mediante este método se insertan datos a la cola ya creada. */ 	Precondiciones: cola <> null 	Pos condiciones: datos insertados en cola, cola insertada. borrarCola() */con este método se elmina cierta cola de datos */ 	Precondiciones: cola != 0 	Pos condiciones: cola eliminada
Particularidades de un TAD COLA  con prioridades. Se introduce una forma de simular genericidad en los TADs de Modula-2 mediante el uso del TAD ITEM. En una cola de prioridad los elementos están ordenados dependiendo de su prioridad, de manera que esté disponible (para las operaciones Frente y Extraer) el elemento de máxima prioridad. En caso de igualdad se sigue la regla FIFO, de dos elementos con igual prioridad sale primero el que primero entró. Esto se puede conseguir bien insertando ordenadamente y extrayendo el primer elemento, bienDpto
Implementaciones de COLAS con vectores circulares public class Cola {      private static int max = 100;      private Object elementos[];      private intfrente, post;  } // fin clase Cola
Gracias porsu Atención!!

Más contenido relacionado

La actualidad más candente

Colas en programacion
Colas en programacionColas en programacion
Colas en programacionLuis Igoodbad
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasknowallrpa
 
Unidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUnidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUrban Skate House
 
Listas doblemente enlazadas C++ UP
Listas doblemente enlazadas C++ UPListas doblemente enlazadas C++ UP
Listas doblemente enlazadas C++ UPMiguelGomez371
 
Estructura de Datos: Lista
Estructura de Datos: ListaEstructura de Datos: Lista
Estructura de Datos: ListaEmerson Garay
 
Archivo secuencial indexado
Archivo secuencial indexadoArchivo secuencial indexado
Archivo secuencial indexadoTortuly
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfijaOmarzingm
 
Unidad 3 estructura lineales
Unidad 3 estructura linealesUnidad 3 estructura lineales
Unidad 3 estructura linealesEnrique2194
 
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoEstructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoJosé Antonio Sandoval Acosta
 
Estructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesEstructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesJosé Antonio Sandoval Acosta
 

La actualidad más candente (20)

Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Lista simple
Lista simpleLista simple
Lista simple
 
Estructura datos pilas y colas
Estructura datos pilas y colasEstructura datos pilas y colas
Estructura datos pilas y colas
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 
Listas y Pilas
Listas y PilasListas y Pilas
Listas y Pilas
 
Unidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUnidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datos
 
Listas doblemente enlazadas C++ UP
Listas doblemente enlazadas C++ UPListas doblemente enlazadas C++ UP
Listas doblemente enlazadas C++ UP
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
Estructura de Datos: Lista
Estructura de Datos: ListaEstructura de Datos: Lista
Estructura de Datos: Lista
 
Listas doblemente enlazadas
Listas doblemente enlazadasListas doblemente enlazadas
Listas doblemente enlazadas
 
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Pilas En C++
Pilas En C++Pilas En C++
Pilas En C++
 
Archivo secuencial indexado
Archivo secuencial indexadoArchivo secuencial indexado
Archivo secuencial indexado
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Unidad 3 estructura lineales
Unidad 3 estructura linealesUnidad 3 estructura lineales
Unidad 3 estructura lineales
 
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoEstructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de Ordenamiento
 
Listas
ListasListas
Listas
 
Estructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesEstructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras Lineales
 

Similar a Estructura de datos listas, pilas y colas

Estructura dedatos listas pilas y colas 12-0617
Estructura dedatos listas pilas y colas 12-0617Estructura dedatos listas pilas y colas 12-0617
Estructura dedatos listas pilas y colas 12-0617Johannadotel
 
Listas, pilas & colas
Listas, pilas & colasListas, pilas & colas
Listas, pilas & colasjorgeluis0317
 
ED Listas, Pilas y Colas
ED Listas, Pilas y ColasED Listas, Pilas y Colas
ED Listas, Pilas y Colasiventura26
 
Listas, pilas y colas richard ramos 09-1130
Listas, pilas y colas   richard ramos 09-1130Listas, pilas y colas   richard ramos 09-1130
Listas, pilas y colas richard ramos 09-1130reyarturo16
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datoscharlezgt
 
Listas,pilas y colas
Listas,pilas y colasListas,pilas y colas
Listas,pilas y colasBlackzerox
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasMaxDLeon
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasElvis Perez
 
Informe declaracion de listas David Ratmiroff.pdf
Informe declaracion de listas David Ratmiroff.pdfInforme declaracion de listas David Ratmiroff.pdf
Informe declaracion de listas David Ratmiroff.pdfYuriratmiroff
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colaslabarra90
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colaslabarra90
 
Listas pilas colas
Listas pilas colasListas pilas colas
Listas pilas colasxpiner
 
Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Edward Mejia Gomez
 

Similar a Estructura de datos listas, pilas y colas (20)

Estructura dedatos listas pilas y colas 12-0617
Estructura dedatos listas pilas y colas 12-0617Estructura dedatos listas pilas y colas 12-0617
Estructura dedatos listas pilas y colas 12-0617
 
Listas, pilas & colas
Listas, pilas & colasListas, pilas & colas
Listas, pilas & colas
 
ED Listas, Pilas y Colas
ED Listas, Pilas y ColasED Listas, Pilas y Colas
ED Listas, Pilas y Colas
 
Listas, pilas y colas richard ramos 09-1130
Listas, pilas y colas   richard ramos 09-1130Listas, pilas y colas   richard ramos 09-1130
Listas, pilas y colas richard ramos 09-1130
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas,pilas&colas yorka
Listas,pilas&colas yorkaListas,pilas&colas yorka
Listas,pilas&colas yorka
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Listas,pilas y colas
Listas,pilas y colasListas,pilas y colas
Listas,pilas y colas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas
ListasListas
Listas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Informe declaracion de listas David Ratmiroff.pdf
Informe declaracion de listas David Ratmiroff.pdfInforme declaracion de listas David Ratmiroff.pdf
Informe declaracion de listas David Ratmiroff.pdf
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colas
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colas
 
Complejidad Algoritmica
Complejidad AlgoritmicaComplejidad Algoritmica
Complejidad Algoritmica
 
Listas pilas colas
Listas pilas colasListas pilas colas
Listas pilas colas
 
Saiymari colas, filas y nos e que otra cosa
Saiymari colas, filas y nos e que otra cosaSaiymari colas, filas y nos e que otra cosa
Saiymari colas, filas y nos e que otra cosa
 
Colas, filas
Colas, filasColas, filas
Colas, filas
 
Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314
 

Último

Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfNataliaMalky1
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORGonella
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)veganet
 

Último (20)

Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIOR
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
 

Estructura de datos listas, pilas y colas

  • 1. Listas, Pilas y ColasEstructura de Datos(Unibe) Elias Gregorio PeñaEvertzMatricula 10-1170
  • 2. Con relación a la Estructura LISTA Indicar objetos reales que se puedan modelar con dicha estructura. Listas de Ordenes de visitas (hospital…) Lista de aplicaciones Lista de pacientes
  • 3. Una lista es una estructura de datos secuencial. Una manera de clasificarlas es por la forma de acceder al siguiente elemento: - Lista densa: la propia estructura determina cuál es el siguiente elemento de la lista. Ejemplo: un array.- Lista enlazada: la posición del siguiente elemento de la estructura la determina el elemento actual. Es necesario almacenar al menos la posición de memoria del primer elemento. Además es dinámica, es decir, su tamaño cambia durante la ejecución del programa. Definiciones de la misma LISTA
  • 4. Definiciones de la misma LISTA Las Listas son secuencias de 0 o más elementos de un tipo de datos almacenado en memoria. Son estructuras lineales donde cada elemento de una lista excepto el primero tiene un único predecesor y cada elemento de la lista excepto el ultimo tiene un sucesor. Gráficamente:
  • 5. TAD que modele las LISTAS. Nombre: TAD Lista Invariante: n/a Operaciones: crearLista() */ Devuelve un valor del tipo pila preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/ Precondiciones: N=0 Pos condiciones: Lista creada
  • 6. insertar(crearLista, x pos) */ mediante este método se insertan datos a la Lista ya creada. Inserta elemento x en pos */ Precondiciones: pos != null Pos condiciones: insertarLista completado (dato insertado en Lista) FIN(): */Retorna la posición del último elemento, en otras palabras el “fin” de la lista, también se puede considerar con el tamaño de la lista. Sí la lista está vacía retorna una posición invalida que podría ser -1. */ Precondiciones: n/A Pos condiciones: operación finalizada   ….TAD que modele las LISTAS.
  • 7. ….TAD que modele las LISTAS. Siguiente(pos) */con este método se Retorna pos + 1, si pos es igual o mayor a FIN(), retorna FIN(). */ Precondiciones: pos != 0 Pos condiciones: retorna pos anterior(pos) */con este método se Retorna pos – 1. */ Precondiciones: pos != 0 Pos condiciones: retorna pos   limpiar(pos) */Limpia la lista y Finaliza FIN()*/ Precondiciones: n…n+1, pos = 0 Pos condiciones: Lista vacia…
  • 8. Relacionar el concepto de VENTANA con el de Lista. Una ventana es un área visual, normalmente de forma rectangular, que contiene algún tipo de interfaz de usuario, mostrando la salida y permitiendo la entrada de datos para uno de varios procesos que se ejecutan simultáneamente.  Y un Consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias (punteros) al nodo anterior o posterior.
  • 9. Relacionar el concepto de VENTANA con el de Lista. El principal beneficio de las listas enlazadas respecto a los array convencionales es que el orden de los elementos enlazados puede ser diferente al orden de almacenamiento en la memoria o el disco. La relación es que con ambos términos nos referimos a manipulación de datos sin importar el orden de los mismos, solo el acceso y su modificación.
  • 10. Describir las implementaciones de Listas: Para representar en lenguaje C esta estructura de datos se utilizarán punteros, un tipo de datos que suministra el lenguaje. Se representaráunalistavacía con la constante NULL. Se puededefinir la listaenlazada de la siguientemanera: struct lista { int clave; struct lista *sig; };
  • 11. … Describir las implementaciones de Listas: e1.- Vectores Utilizando una estructura de datos estática arreglo para representar e implementar el TDA LISTAS. Asumamos que los ELEMENTOS que contiene la LISTA son representados por el tipo ENTERO. La cantidad de ELEMENTOS que puede contener la LISTA tiene un máximo de n ELEMENTOS. Por lo que la representación formal de este tipo se define de la siguiente manera: Tipo LISTA= arreglo [1..n] de ENTEROS; VarL : LISTA;
  • 12. … Describir las implementaciones de Listas: Implementación Procedimiento: Operaciones básicas… LISTA_VACÏA (Var L :LISTA) var i : ENTERO; principio Para i := 1 hasta n hacer L[ i ]:= 0; fin; Función ES_VACÍA(L :LISTA) : LÓGICO principio Si L[ 1 ] = 0 entonces ES_VACÏA := Verdad Sino ES_VACÏA := Falso; Fin;
  • 13. … Describir las implementaciones de Listas: Procedimiento Insertar (Var L :LISTA, p: POSICIÓN, e : ENTERO) var i : ENTERO; principio Si L [p] <> 0 entonces mientras (i <=n) y ( L [i ] <> 0 ) hacer principio sig := l[p]; l[i] := e; e := sig; fin; l [ i ] := e; fin;
  • 14. … Describir las implementaciones de Listas: e2.- Listas doblemente enlazadas Una lista enlazada es una de las estructuras de datos fundamentales, y puede ser usada para implementar otras estructuras de datos. Consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias (punteros) al nodo anterior o posterior. El principal beneficio de las listas enlazadas respecto a los array convencionales es que el orden de los elementos enlazados puede ser diferente al orden de almacenamiento en la memoria o el disco, permitiendo que el orden de recorrido de la lista sea diferente al de almacenamiento.
  • 15. Son listas que tienen un enlace con el elemento siguiente y con el anterior. Unaventajaquetienenesquepuedenrecorrerse en ambos sentidos, ya sea paraefectuarunaoperación con cadaelemento o parainsertar/actualizar y borrar. La otraventajaesquelasbúsquedas son algomásrápidaspuestoque no hacefaltahacerreferencia al elemento anterior. Su inconvenienteesqueocupanmásmemoriapornodoqueunalista simple. … Describir las implementaciones de Listas:
  • 16. Mecanismos para implementar las listas. En el lenguaje C se utiliza los llamados punteros para representar esta estructura de datos. En java se encuentra un paquete completo en java.util de donde se pueden utilizar las listas, como un tipo abstracto de datos, este tipo de estructura de datos también se utiliza a partir y/o como una interfaz.
  • 17. Con relación a la Estructura PILA:
  • 18.
  • 19. Definiciones de Pila. A las pilas se les llama también listas LIFO (last-in first-out) o listas “primero en entrar, primero en salir”. En el TDA Pila no se definen operaciones de posicionamiento en la pila. Esto es debido a que todas las operaciones de acceso se realizan en la misma posición, el tope de la pila.
  • 20. TAD que modele las PILAS. Nombre: TAD Pila Invariante: n<>0 Operaciones: crearPila() */ Devuelve un valor del tipo pila preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/ Precondiciones: N=0 Pos condiciones: pila creada
  • 21. insertarPila(crearPila) */ mediante este método se insertan datos a la pila ya creada. Con las pilas se usa el método push para insertar*/ Precondiciones: pila <> null Pos condiciones: insertarPila completado (datos insertados en pila) borrarPila() */con este método se elmina cierta pila de datos */ Precondiciones: pila <> null Pos condiciones: pila eliminada
  • 22. Con relación a la Estructura COLA:
  • 23. Varias definiciones Cola. Una cola 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 FirstOut), debido a que el primer elemento en entrar será también el primero en salir. Una cola es también una estructura de datos lineal en donde las eliminaciones se realizan por uno de sus extremos que normalmente se llama frente, y las inserciones se realizan por el otro extremo que normalmente se llama final. A estas estructuras se les llama FIFO (First In FirstOut).
  • 24. TAD que modele las COLAS. Nombre: TAD COLA Invariante: n/a Operaciones: crearCola() */ Devuelve un valor del tipo cola preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/ Precondiciones: N=0 Pos condiciones: cola vacia creada
  • 25. insertarCola(crearCola) */ mediante este método se insertan datos a la cola ya creada. */ Precondiciones: cola <> null Pos condiciones: datos insertados en cola, cola insertada. borrarCola() */con este método se elmina cierta cola de datos */ Precondiciones: cola != 0 Pos condiciones: cola eliminada
  • 26. Particularidades de un TAD COLA con prioridades. Se introduce una forma de simular genericidad en los TADs de Modula-2 mediante el uso del TAD ITEM. En una cola de prioridad los elementos están ordenados dependiendo de su prioridad, de manera que esté disponible (para las operaciones Frente y Extraer) el elemento de máxima prioridad. En caso de igualdad se sigue la regla FIFO, de dos elementos con igual prioridad sale primero el que primero entró. Esto se puede conseguir bien insertando ordenadamente y extrayendo el primer elemento, bienDpto
  • 27. Implementaciones de COLAS con vectores circulares public class Cola {     private static int max = 100;     private Object elementos[];     private intfrente, post; } // fin clase Cola