son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden...

28
• Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero en salir) y las colas como estructuras FIFO (First – in, First out) • La pila o stack es una coleccion ordenada de elementos a los que solo se puede acceder por un unico lugar o extremo de la pila.

Upload: oscar-rubio-belmonte

Post on 02-Feb-2016

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

• Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero en salir) y las colas como estructuras FIFO (First – in, First out)

• La pila o stack es una coleccion ordenada de elementos a los que solo se puede acceder por un unico lugar o extremo de la pila.

Page 2: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

• Los elementos de la pila se añaden o quitan de la parte superior (cima). Ejemplo pila de platos, de libros etc.

• Las operaciones usuales en la pila son Insertar, Quitar, comprobar si la pila esta vacía, comprobar si la pila esta llena, limpiar pila, contar, modificar,consultar

• La pila se puede implementar mediante arrays en cuyo caso su dimension o longitud es fija y mediante punteros en cuyo caso se utiliza memoria dinámica.

Page 3: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

• Si un programa intenta sacar un elemento de una pila vacía se producirá un error (desbordamiento negativo) underflow.

• Por el contrario, si un programa intenta poner un elemento en una pila llena, se producirá un error llamado desbordamiento o rebosamiento (overflow)

Page 4: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

• Los algoritmos de introducir , insertar (push) y quitar (pop) datos de la pila utilizando el índice del array como puntero de la pila son:– INSERTAR (push)

• Verificar si la pila no esta llena

• Incrementar en uno 1 el puntero de la pila

• Almacenar el elemento en la posición del puntero de la pila

Page 5: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

– QUITAR(pop)• Verificar si la pila no esta vacía

• Leer el elemento de la posición del puntero de la pila

• Decrementar en 1 el puntero de la pila

• En el caso de que el array que define la pila tenga tamañopila elementos, las posiciones del array, es decir el índice o puntero de la pila , estarán comprendidas en el rango 0 a tamañopila – 1 elementos, de modo que en una pila llena el puntero apunta a tamañopila -1

Page 6: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

• En una pila vacía el puntero de la pila apunta a –1, ya que 0, teóricamente será el índice del primer elemento

0 1 2 3 4 5 6

PUNTERO DE LA PILA

CIMA

PILA VACIAPUNTERO PILA -1 PILA LLENA

PUNTERO PILA 6

Page 7: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

Ejercicio:

Page 8: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 9: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 10: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 11: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 12: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 13: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

PILAS POR PROGRAMACION ESTRUCTURADA

Page 14: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 15: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 16: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero

COLAS

12 4 5

SE RETIRAN ELEMENTOS

SE INGRESAN ELEMENTOS

1

2

4 5

ELEMENTO RETIRADO

FRENTE FINAL

EL INCONVENIENTE EN LOS ARREGLOS SUCEDE EN EL MOMENTO DE RETIRAR UN ELEMENTO. SE DEBE HACER UNDESPLAZAMIENTO. ESTO IMPLICA INCORPORAR PROCESOSADICIONALES

Page 17: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 18: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 19: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 20: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 21: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 22: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 23: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 24: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 25: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 26: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 27: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero
Page 28: Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero