1. PONTIFICIA UNIVERSIDAD CATOLICA DEL ECUADOR SEDE AMBATO
ESCUELA DE INGENIERIA EN SISTEMAS
SEGUNDO SEMESTRE
ESTRUCTURA DE DATOS I
CÓDIGO PARA IMPLEMENTAR PILAS
/**
* @(#)ImplementarPilas.java
*
* Programa para la implementación básica de una pila como estructura estática
* implementada a través de un vector
* implementar ademas las operaciones insertar, extraer, vacia y llena
*
* @author
* @version 1.00 2013/3/7
*/
//ISERTAR LIBRERIAS
importjava.util.Scanner;
publicclassImplementarPilas
{
//DECLARAR LOS ELEMENTOS DE LA PILA COMO VARIABLES GLOBALES
//tope apunta simpre al ultimo elemento de la pila
publicstaticint tope=-1;
//MAX define el tamanomaximo de la pila
2. public static final int MAX=10;
//pila es una estructura de datos lineal y estatica
public static intpila[]=new int [MAX];
public static void main(String[] args)
{
Scanner leer = new Scanner (System.in);
System.out.println("nnttIMPLEMENTACION DE PILAS CON ARRAYSnn");
//VERIFICAR SI LA PILA ESTA LLENA
if(llena()==true)
{
System.out.println ("nttLa Pila estallena .......n");
}
else
{
System.out.println ("nttLa Pila NO estallena .......n");
}
//INSERTAR UN ELEMENTO
int valor;
System.out.print ("Ingrese el valor a insertar en la pila: ");
valor = leer.nextInt();
3. //LLAMADA LA METODO INSERTAR
insertar(valor);
//VERIFICAR SI LA PILA ESTA VACIA
if(vacia()==true)
{
System.out.println ("nttLa Pila esta vacia .......n");
}
else
{
System.out.println ("nttLa Pila NO esta vacia .......n");
}
//IMPRIMIR LOS ELEMENTO DE LA PILA
imprimir();
intop;
//INSERTAR VARIOS ELEMENTOS EN LA PILA
System.out.println ("nnttINSERTAR ELEMENTOSnn");
do
{
System.out.print ("Ingrese el valor a insertar en la pila: ");
valor = leer.nextInt();
insertar(valor);
System.out.print ("nDesea insertar otro elemento?<1/0>: ");
op=leer.nextInt();
if(llena()==true)
4. {
System.out.println ("nttLa pila ya esta llena.....n");
}
}while(op==1 && (llena()==false));
//IMPRIMIR LOS VALORES INGRESADOS
imprimir();
//EXTRAER ELEMENTOS DE LA PILA
System.out.println ("nnttEXTRAER ELEMENTOSnn");
do
{
System.out.println ("Valor que se extrajo de la pila: "+extraer());
System.out.println ("nLa pila resultante es: ");
imprimir();
}while(vacia()==false);
}
//IMPLEMENTAR LOS METODOS CON LAS OPERACIONES CON PILAS
//VERIFICAR SI LA PILA ESTA VACIA
public static booleanvacia()
{
if (tope==-1)
6. public static void insertar (int valor)
{
if(llena()==true)
{
System.out.println("ntNo se puede insertar el valor .....la pila esta llenan");
}
else
{
tope++;
pila[tope]=valor;
}
}
//METODO PARA IMPRIMIR LOS ELEMENTOS DE LA PILA
publicstaticvoid imprimir()
{
int i;
System.out.println ("nnttELEMENTOS DE LA PILAnn");
//verificar si la pila esta vacia
if(vacia()==true)
{
System.out.println ("tNo existen elementos para imprimir, la pila esta
vacian");
}
else