Sei sulla pagina 1di 21

| 






Universidad Iberoamericana UNIBE
República Dominicana
Prof. Dra. Rina Familia
Estructura de Datos
Arturo Tavárez Tejada 09-1123
_eremos«

Estructura Lista

Estructura Pila

Estructura Cola
VEstructura Lista !!
abes que es una Estructura Lista???

La lista enlazada es un TDA nos permite


almacenar datos de una forma
organizada, al igual que los vectores pero,
a diferencia de estos, esta estructura es
dinámica, por lo que no tenemos que
saber "a priori" los elementos que puede
contener.
En una lista enlazada, cada elemento
apunta al siguiente excepto el último que
no tiene sucesor y el valor del enlace es
null. Por ello los elementos son registros
que contienen el dato a almacenar y un
enlace al siguiente elemento. Los
elementos de una lista, suelen recibir
también el nombre de nodos de la lista.
Un ejemplo???
En estructura de datos, en la estructura Lista,
podemos encontrar los ArrayList();Un array
es una estructura de datos que contiene una
colección de datos del mismo tipo. ejemplos
reales de uso pueden ser:

Temperaturas mínimas de los últimos treinta


días.
_alor de las acciones de una empresa
durante la última semana.
Almacenamiento y lectura de las notas de mi
semestre.
Entre otras...
Como se inicializa un ArrayList?... _eamos un pequeño código...

V import java.util.*;
V /*Utiliza la librería java.util*/
V public class ArrayListExample {
V public static void main(tring[] args) {
V // Instancia una coleccion,e inicializa el Array
V ArrayList<tudent> students = new ArrayList<tudent>();
V // Crea unos cuantos objetos de tipo tudent, aqui radica la
verdadera funcion del ArrayList
V tudent a = new tudent();
V tudent b = new tudent();
V tudent c = new tudent();
V // Referencias de los Objetos
V students.add(a);
V students.add(b);
V students.add(c);
V
V // Imprimimos por pantalla !!
V for (tudent s : students) {
V ystem.out.println(s.getName());
V }
V }
V }
TAD QUE MODELA LA LITA

LITA lista_acia(){«}

Precondicion: Elementos a crear en una lista.


insertar(ENTAL LITA, ENT ELEMENTO)
Postcondicion: RETORNA UNA LITA CON LO ELEMENTO DADO
-------------------------------------------------------------------------
borrarLista(ENTAL LITA la lista) {«}

Precondicion: tamaño (la lista).


Postcondicion: _acía la lista la lista.
Estrategias de implementación de listas

En implementaciones basadas en arrays


como el _ector de Java, insertar un
elemento en cualquier lugar que no sea el
final de la lista puede ser complejo, ya que
todos los elementos que se encuentran entre
el punto de inserción y el final de la lista
deberán desplazarse una posición para dejar
hueco para la nueva entrada.
Ocurre algo similar con la eliminación.
Por ello, las listas suelen utilizar una
implementación enlazada.
Lista Doblemente Enlazadas !!!

En algunas aplicaciones podemos desear


recorrer la lista hacia adelante y hacia
atrás, o dado un elemento, podemos
desear conocer rápidamente los
elementos anterior y siguiente. En tales
situaciones podríamos desear darle a cada
celda sobre una lista un puntero a las
celdas siguiente y anterior en la lista.
VEstructura Pila !!
abes que es una
estructura Pila ??

Una pila, es una


estructura de datos en la
que el último elemento
en entrar es el primero
en salir, por lo que
también se denominan
estructuras LIFO (ã 
 
).

En esta estructura sólo


se tiene acceso a la
cabeza o cima de la pila.
on aquellas que solo
tiene 2 operaciones,
Push(Inserción) y
Pop(Eliminación) la cual
solo se puede efectuar
por un extremo llamado
Top. in Embargo se le
pueden aplicar todas las
operaciónes al igual que a
las listas.
Algunos usos comunes
son:

Memoria de tu ordenador
Memoria de tu
martphone
Caja de herramientas
V Un ejemplo de implementación ??
V (pascal)
V Õ
 
  
V
V Procedure Insertarfondo(var pila:Tpila;elem:Telem);
V var aux:telem;
V begin
V if not Pilavacia(pila) then
V begin
V Cima(pila,aux);
V Desapilar(pila);
V Insertarfondo(pila,elem);
V Apilar(pila,aux)
V end
V else
V Apilar(pila,elem)
V end;
V <!--[if !supportEmptyParas]-->
V <!--[endif]-->
TAD que modele las pilas
V NOMBRE: TAD PILA
V IN_ARIANTE (); N<>1
V
V CREA_PILA(){...}
V >>> /* RETORNA UN _ALOR DEL TIPO CREA_PILA.
LA MIMA operación DE LA MAYORIA DE LA LITA.
V
V PRE; N=1
V POT: RETORNA PILA CREADA
-------------------------------------------------------------------
V BORRA_PILA() {«}
V >>>/*ELIMINA PILA CREADA*/
V
V PRE: PILA = TRUE /*PILA CREADA
ANTERIORMENTE*/
V POT: RETORNA 0 (NULL)
VEstructura Cola !!
abes que es una Estructura Cola??

Una cola es una estructura de datos, en la


cual sólo se pueden aplicar estas dos
operaciones: colocar un elemento al final, o
quitar un elemento del principio.

Una  es una estructura de datos,


caracterizada por ser una secuencia de
elementos en la que la operación de inserción
j
 se realiza por un extremo y la operación
de extracción j j por el otro. También se le
llama estructura FIFO (del inglés   

), debido a que el primer elemento en
entrar será también el primero en salir.
Acerca de su implementación«

Las colas se utilizan en sistemas


informáticos, transportes y operaciones
de investigación (entre otros), dónde los
objetos, personas o eventos son tomados
como datos que se almacenan y se
guardan mediante colas para su posterior
procesamiento. Este tipo de estructura de
datos abstracta se implementa en
lenguajes orientados a objetos mediante
clases, en forma de listas enlazadas
a 

TAD QUE MODELE COLA


NOMBRE:TAD COLA
IN_ARIANTE (): 0

CREA_COLA(){...}
>>> /*Retorna un valor de tipo CREA_COLA*/
PRE: N=NULL
POT: RETORNA UN CONTENEDOR TIPO
CREA_COLA
---------------------------------------------------
BORRA_COLA(){...}

>>>/*Elimina valores respecto CREA_COLA()*/


PRE: _ALORE DE TIPO CREA_COLA
POT: ELIMINA COLA
´racias por su
atención !!!!

Potrebbero piacerti anche