Pila dinamica y pila estatica

6,239 views

Published on

Ejemplos de Pila Dinámica y Pila Estt

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,239
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
178
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Pila dinamica y pila estatica

  1. 1. PILA DINÁMICA EN JAVApackage estructuradedatospilas;import java.util.ArrayList;import java.util.Iterator;import java.util.LinkedList;import java.util.List;import java.util.Scanner;public class pilas { public static void main(String[] args) { Scanner leer = new Scanner (System.in); int num; int op; LinkedList pila = new LinkedList(); do{ System.out.println("t menu t"); System.out.println("operaciones con pilas"); System.out.println("1.-insertar al principio"); System.out.println("2.-insertar al final"); System.out.println("3.-borrar al final"); System.out.println("4.-mostrar la pila"); System.out.println("5.-salir"); System.out.println("n"); System.out.println("elija la operacion que desee"); op=leer.nextInt(); switch (op){ case 1: System.out.println("inserte numero"); num=leer.nextInt(); pila.addFirst(num); break; case 2: System.out.println("inserte numero"); num=leer.nextInt(); pila.addLast(num); break; case 3: System.out.println("se borra el nodo final"); pila.removeLast(); break; case 4: System.out.println("la pila es la siguiente"); List pila2= new ArrayList(pila); Iterator it = pila2.iterator();
  2. 2. while (it.hasNext()){ System.out.println(it.next()+""); } break; case 5: System.out.println("al rato"); break; } } while (op !=5); } }PILA ESTATICA EN JAVApackage PILAS;import java.util.Scanner;public class pilaestatica { public int dato; public static int tope; public static int op; int pila[] = new int [10];public void Insertar(){ if(tope==10){ System.err.println("Pila llena"); } else{ System.out.println("Proporciona el dato para la pila"); System.out.println("dato "+tope); Scanner cap = new Scanner(System.in); pila[tope]= cap.nextInt(); tope++; }}public void Imprimir(){ if(tope>=10){ for(int topeM=tope-1; topeM>=0; topeM--){ System.out.println("nn"+pila[topeM]); } } else System.err.println("Pila Vacia No hay nada que mostrar");}public void Eliminar(){ if(tope==0){ System.err.println("Pila vacia"); }
  3. 3. else if(tope==10){//Esto se usa cuando la pila esta totalmente llena, ya que se incremento en insertary quedo en 10, de lo contrario nos arrojará un error de Array tope--; pila[tope]=0; tope--;//SE vuelva a decrementar para que este en la posicion correcta, porque tenia un numerodemás por el insertar } else { pila[tope]=0; tope--; }} public static void main(String[] args) { pilaestatica p = new pilaestatica(); String r; Scanner cap1= new Scanner(System.in); Scanner cap= new Scanner(System.in); tope=0; h: do{ System.out.println("Menu Principal: n¿Que desea hacer con la pila?"); System.out.println("1.- Insertar"); System.out.println("2.- Eliminar"); System.out.println("3.- Imprimir"); System.out.println("4.- Salir"); op=cap.nextInt(); switch(op){ case 1: { p.Insertar(); } break; case 2: { p.Eliminar(); } break; case 3: { p.Imprimir(); } break; case 4: { System.out.println("Adios!!!"); } break h; default: System.err.println("Seleccion erronea, teclea otra opcion esa opcion no existe!!!"); }
  4. 4. System.out.println("Deseas realizar otra operacion con tu pila?(S/N)"); r=cap1.nextLine(); }while(r.equalsIgnoreCase("S")); }}

×