SlideShare una empresa de Scribd logo
1 de 19
Johanna Dotel 12-0617
 Una

lista es una estructura de datos
secuencial.

 Indicar

objetos reales que se puedan
modelar con dicha estructura.
 Listas

de Ordenes de visitas (hospital…)
 Lista de aplicaciones
 Lista de pacientes
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:











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










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…
 Para

representar en lenguaje C esta estructura
de datos se utilizarán punteros, un tipo de datos
que suministra el lenguaje. Se representará una
lista vacía con la constante NULL. Se puede
definir la lista enlazada de la siguiente manera:







struct lista
{
int clave;
struct lista *sig;
};


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;


Son listas que tienen un enlace con el elemento
siguiente y con el anterior. Una ventaja que
tienen es que pueden recorrerse en ambos
sentidos, ya sea para efectuar una operación con
cada elemento o para insertar/actualizar y borrar.
La otra ventaja es que las búsquedas son algo más
rápidas puesto que no hace falta hacer referencia
al elemento anterior. Su inconveniente es que
ocupan más memoria por nodo que una lista
simple.


A las pilas se les llama también listas LIFO (last-in firstout) 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.
 Indicar

objetos reales que se puedan
modelar con dicha estructura.
 Memoria





de una pc
Caja de objetos

Definiciones de Pila.
Una pila es un caso especial de lista en la cual
todas las inserciones y supresiones tienen lugar
en un extremo determinado llamado tope.
 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


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 First Out),
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 First Out).
 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


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
 public






class Cola {

private static int max = 100;
private Object elementos[];
private int frente, post;
} // fin clase Cola
GRACIAS POR SENTARSE A
ESCUCHARNOS

Más contenido relacionado

La actualidad más candente

Listas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas CircularesListas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas CircularesMago Julio Cesar
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasJose R. Trejo
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasElvis Perez
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasMaxDLeon
 
Presentacion Lista, Cola y Pila
Presentacion Lista, Cola y PilaPresentacion Lista, Cola y Pila
Presentacion Lista, Cola y Pilathemvp16
 
Diapositiva de l estructura de datos
Diapositiva de l estructura de datosDiapositiva de l estructura de datos
Diapositiva de l estructura de datosmariajuly
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadasguestbd36f7
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasHuascar Génere
 
conceptos de Punteros y Nodos
conceptos de Punteros y Nodosconceptos de Punteros y Nodos
conceptos de Punteros y NodosBoris Salleg
 
Estructuras dinámicas
Estructuras dinámicasEstructuras dinámicas
Estructuras dinámicasPatriciaU
 
Listas pilas colas_carlos_rosario10-1337
Listas pilas colas_carlos_rosario10-1337Listas pilas colas_carlos_rosario10-1337
Listas pilas colas_carlos_rosario10-1337CJrosario2
 
Estructura de datos Pilas, Colas y Listas.
Estructura de datos Pilas, Colas y Listas.Estructura de datos Pilas, Colas y Listas.
Estructura de datos Pilas, Colas y Listas.christgch
 

La actualidad más candente (19)

Listas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas CircularesListas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas Circulares
 
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 y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y 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
 
Presentacion Lista, Cola y Pila
Presentacion Lista, Cola y PilaPresentacion Lista, Cola y Pila
Presentacion Lista, Cola y Pila
 
Lista, pilas y colas
Lista, pilas y colasLista, pilas y colas
Lista, pilas y colas
 
Pilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datosPilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datos
 
Diapositiva de l estructura de datos
Diapositiva de l estructura de datosDiapositiva de l estructura de datos
Diapositiva de l estructura de datos
 
Listas Pilas Colas
Listas Pilas ColasListas Pilas Colas
Listas Pilas Colas
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 
Pilas En C++
Pilas En C++Pilas En C++
Pilas En C++
 
Listas
ListasListas
Listas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colas
 
conceptos de Punteros y Nodos
conceptos de Punteros y Nodosconceptos de Punteros y Nodos
conceptos de Punteros y Nodos
 
Estructuras dinámicas
Estructuras dinámicasEstructuras dinámicas
Estructuras dinámicas
 
Listas pilas colas_carlos_rosario10-1337
Listas pilas colas_carlos_rosario10-1337Listas pilas colas_carlos_rosario10-1337
Listas pilas colas_carlos_rosario10-1337
 
Estructura de datos Pilas, Colas y Listas.
Estructura de datos Pilas, Colas y Listas.Estructura de datos Pilas, Colas y Listas.
Estructura de datos Pilas, Colas y Listas.
 

Similar a Estructura dedatos listas pilas y colas 12-0617

Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasElias Peña
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datoscharlezgt
 
Listas pilas colas
Listas pilas colasListas pilas colas
Listas pilas colasxpiner
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasElbery
 
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
 
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
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos
Estructura de datos Estructura de datos
Estructura de datos jarydr18
 

Similar a Estructura dedatos listas pilas y colas 12-0617 (20)

Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
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
 
Listas,pilas&colas yorka
Listas,pilas&colas yorkaListas,pilas&colas yorka
Listas,pilas&colas yorka
 
Colas, filas
Colas, filasColas, filas
Colas, filas
 
Listas pilas colas
Listas pilas colasListas pilas colas
Listas pilas colas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314
 
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
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Dionely torres 11 1150
Dionely torres 11 1150Dionely torres 11 1150
Dionely torres 11 1150
 
Darwin rodriguez 12-0861_pilasy_colas
Darwin rodriguez 12-0861_pilasy_colasDarwin rodriguez 12-0861_pilasy_colas
Darwin rodriguez 12-0861_pilasy_colas
 
Lista simple
Lista simpleLista simple
Lista simple
 
Listas
ListasListas
Listas
 
Estructura de datos
Estructura de datos Estructura de datos
Estructura de datos
 

Estructura dedatos listas pilas y colas 12-0617

  • 2.  Una lista es una estructura de datos secuencial.  Indicar objetos reales que se puedan modelar con dicha estructura.  Listas de Ordenes de visitas (hospital…)  Lista de aplicaciones  Lista de pacientes
  • 3. 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: 
  • 4.        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
  • 5.          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
  • 6.         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…
  • 7.  Para representar en lenguaje C esta estructura de datos se utilizarán punteros, un tipo de datos que suministra el lenguaje. Se representará una lista vacía con la constante NULL. Se puede definir la lista enlazada de la siguiente manera:      struct lista { int clave; struct lista *sig; };
  • 8.  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;
  • 9.  Son listas que tienen un enlace con el elemento siguiente y con el anterior. Una ventaja que tienen es que pueden recorrerse en ambos sentidos, ya sea para efectuar una operación con cada elemento o para insertar/actualizar y borrar. La otra ventaja es que las búsquedas son algo más rápidas puesto que no hace falta hacer referencia al elemento anterior. Su inconveniente es que ocupan más memoria por nodo que una lista simple.
  • 10.  A las pilas se les llama también listas LIFO (last-in firstout) 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.
  • 11.  Indicar objetos reales que se puedan modelar con dicha estructura.  Memoria   de una pc Caja de objetos Definiciones de Pila. Una pila es un caso especial de lista en la cual todas las inserciones y supresiones tienen lugar en un extremo determinado llamado tope.
  • 12.  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
  • 13.  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
  • 14.  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 First Out), 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 First Out).
  • 15.  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
  • 16.  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
  • 17.  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
  • 18.  public     class Cola { private static int max = 100; private Object elementos[]; private int frente, post; } // fin clase Cola
  • 19. GRACIAS POR SENTARSE A ESCUCHARNOS