PILAS

7
Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado TOPE. Se dice que la pila maneja una estructura Lifo (Last input, First Output). Ultimo en entrar, primero en salir. Así el último elemento que entra a la pila es el primero que se saca. Además del tope la pila tiene un MAXIMO, que representa el tamaño de la pila y es estático e inviolable. Las pilas no tienen una estructura definida, a razón de esto se tiene un vector como pila o una lista ligada como pila. Mas que todo la pila es una filosofía aplicada a una estructura de datos. PILAS

description

PILAS. Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado TOPE. - PowerPoint PPT Presentation

Transcript of PILAS

Page 1: PILAS

Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado TOPE.

Se dice que la pila maneja una estructura Lifo (Last input, First Output). Ultimo en entrar, primero en salir. Así el último elemento que entra a la pila es el primero que se saca.

Además del tope la pila tiene un MAXIMO, que representa el tamaño de la pila y es estático e inviolable.

Las pilas no tienen una estructura definida, a razón de esto se tiene un vector como pila o una lista ligada como pila. Mas que todo la pila es una filosofía aplicada a una estructura de datos.

PILAS

Page 2: PILAS

Ejemplos de pila:

PILAS

Pila

- pila: arreglo objeto- Tope: entero- Maximo: entero

+ Apilar()+ Desapilar()+ PilaVacia()+ PilaLlena()

Page 3: PILAS

En la clase Pila se tienen los atributos:• Pila : Nombre del vector que sirve para representar la estructura.• Tope: Posición en el vector que indica donde esta el último elemento de

la pila.• Máximo: Tamaño del vector o máximo número de elementos de la pila.

Los Estados de una pila son:• Pila llena • Pila con algunos elementos • Pila vacía

Las operaciones que se realizan con las pilas son:• Apilar, insertar, push (poner un elemento en la pila ). • Desapilar, quitar, eliminar, pop (sacar un elemento de la pila).

PILAS

Page 4: PILAS

PILAS

Los estados de la pila representados con el tope se ven en la figura, partiendo de que TOPE, es la posición donde se encuentra el último elemento de la pila, en el primer vector el TOPE es: 3, la pila se encuentra en el máximo que significa que esta llena (en este caso se encuentra en max-1, por el indexado en 0); en el segundo es : 1; en el tercero es : -1 porque la pila esta vacía (condiciones iniciales).

Page 5: PILAS

Clase Pila //atributos propios y privados pila [] es Objeto // Estructura de la pila Tope, Maximo es entero // variables para la pila

//Constructor vacío Método Pila() fin del método Pila constructor

// Constructor que recibe como parámetro el máximo de la pila

Método Pila (entero N) Maximo = N // Se determina la capacidad máxima de la pila pila = nuevo objeto [N] // Asignamos los espacios en la Pila tipo

objeto Tope = -1 // Tope se declara como -1 como referencia a que no existen datos en la pila fin del método Pila constructor

PILAS

Page 6: PILAS

Método lógico PilaVacia()Si (Tope= -1) Imprimir ".... Pila vacía ....<< SUBDESBORDAMIENTO >>" retorne Verdaderosino retorne falsoFin SiFin Método pilaVacia

Publico lógico PilaLLena()Si (Tope=Maximo-1) Imprimir ".... Pila llena ...<< DESBORDAMIENTO >>" retorne Verdaderosino retorne falso Fin SiFin Método pilaLLena

PILAS

Page 7: PILAS

//Metodo para Apilar o ingresar elementos en la PilaMétodo Apilar(dato es objeto) si (PilaLlena()=falso) Tope= Tope +1 pila[Tope] = dato fin sifin de apilar //Metodo para Desapilar o retirar elementos de la pila

Metodo Objeto Desapilar() dato = "" es Objeto si (PilaVacia()=falso) dato = pila[Tope] Tope=Tope-1 fin si retornar dato fin de desapilarFin clase pila

PILAS