Professional Documents
Culture Documents
Tema: Pilas
Grupo: LI-131
Componentes:
Una Pila se compone de los siguientes elementos:
• Arreglo de datos
• El numero máximo
• El numero mínimo
• El tipo de datos de la pila
• los índices Tope y Base de la Pila
• Operaciones Elementales
• Iniciar
• Insertar
• Eliminar
• Axiomas
• Insertar:
Si Tope = Máximo
Mensaje( O Verflow?)
de lo Contrario
Tope = Tope +1
Implementación:
Un requisito típico de almacenamiento de una pila de n elementos es
O(n). El requisito típico de tiempo de O(1) las operaciones también son
fáciles de satisfacer con un array o con listas enlazadas simples.
Manzana Plátano
Fresa Manzana
Fresa Manzana
Manzana Plátano
Soporte de Hardware:
Muchas CPUs tienen registros que se pueden utilizar como punteros de
pila. Algunos, como el Intel x86, tienen instrucciones especiales que
implícitamente el uso de un registro dedicado a la tarea de ser un
puntero de pila. Otros, como el DEC PDP-11 y de la familia 68000 de
Motorola tienen que hacer frente a los modos de hacer posible la
utilización de toda una serie de registros como un puntero de pila. La
serie Intel 80x87 numérico de coprocessors tiene un conjunto de
registros que se puede acceder ya sea como una pila o como una serie
de registros numerados. Algunos microcontroladores, por ejemplo
algunos PICs, tienen un fondo fijo de pila que no es directamente
accesible. También hay una serie de microprocesadores que aplicar una
pila directamente en el hardware:
Soporte de Software:
En programas de aplicación escrito en un lenguaje de alto nivel, una pila
puede ser implementada de manera eficiente, ya sea usando vectores o
listas enlazadas. En LISP no hay necesidad de aplicar la pila, ya que las
funciones apilar y desapilar están disponibles para cualquier lista. Adobe
PostScript también está diseñada en torno a una pila que se encuentra
directamente visible y manipuladas por el programador. El uso de las
pilas está muy presente en el desarrollo de software por ello la
importancia de las pilas como tipo abstracto de datos.
12+4*3+
1 Apilar operando 1
2 Apilar operando 1, 2
+ Añadir 3
4 Apilar operando 3, 4
* Multiplicar 12
3 Apilar operando 12, 3
+ Añadir 15
/**
*
* @Alumno Hernández Mejía Brayan Alfredo
* @Grupo LI-131 T.M.
* @Escuela UES La paz
* @Materia Estructura de datos
* @Semestre 3er semestre de Lic. en informática
*
*/
import java.util.Stack;
// que en ingles Stack es Pila
Ejemplo 2 Java:
package datos;
/*
*/
/**
* @author Brayan
*/
int tope=-1;
int vec[];
Pila3(int max)
if (tope==vec.length-1)
return true;
else
return false;
if (tope==-1)
return true;
else
return false;
{
if (llena()== true)
System.out.println("Overflow");
else
if (tope==-1)
tope=0;
vec[tope]=dato;
else
tope++;
vec[tope]=dato;
int aux;
if (vacia()==true)
return -1;
else
{
aux=vec[tope];
tope--;
return aux;
if(vacia()==true)
else
for(int Contador=0;Contador<vec.length;Contador++)