Generar una pila, y aplicar métodos de
insertar, eliminar y modificar.
Código aquí
package
pilasejemplo;
import pilasejemplo.PilasEjemplo.pila.Nodo;
public class PilasEjemplo {
static class
pila {
static
class Nodo {
int
dato;
Nodo
sig;
}
}
public
static void main(String[] args) {
//Crear
int n =
5;
int m =
2;
Nodo top
= null;
for (int
i = 1; i <= n; i++) {
Nodo
temp = new Nodo();
temp.dato = m * i;
if
(top == null) {
temp.sig = null;
}
else {
temp.sig = top;
}
top
= temp;
}
//imprime
Nodo
temp = top;
System.out.println("Pila");
while
(temp != null) {
System.out.println(temp.dato);
temp = temp.sig;
}
//ingresar
int ingresar = 12;
Nodo tempIng = new Nodo();
tempIng.dato = ingresar;
tempIng.sig = top;
top =
tempIng;
//imprime
temp = top;
System.out.println("Pila ingresada
el elemento " + ingresar);
while (temp !=
null) {
System.out.println(temp.dato);
temp = temp.sig;
}
//Modificar
Nodo pilat2 = null;
int buscar2 = 8;
int
modificar = 99;
temp =
top;
Nodo
temp2 = new Nodo();
while
(temp.dato != buscar2) {
temp2 = new Nodo();
temp2.dato = temp.dato;//volcado
if
(pilat2 == null) {
temp2.sig = null;
}
else {
temp2.sig = pilat2;
}
pilat2 = temp2;
top
= top.sig;
temp
= top;
}
top.dato = modificar; // Modifico
temp2 = pilat2;
while (temp2 !=
null) {
temp
= new Nodo();
temp.dato = temp2.dato;
if
(top == null) {
temp.sig = null;
}
else {
temp.sig = top;
}
top
= temp;
pilat2 = pilat2.sig;
temp2 = pilat2;
}
//imprime
temp = top;
System.out.println("Pila modificada
el elemento " + buscar2 + " por " + modificar);
while (temp !=
null) {
System.out.println(temp.dato);
temp
= temp.sig;
}
//Eliminar
Nodo
pilat = null;
int
buscar = 6;
temp =
top;
Nodo
temp1 = new Nodo();
while
(temp.dato != buscar) {
temp1 = new Nodo();
temp1.dato = temp.dato;//volcado
if
(pilat == null) {
temp1.sig = null;
}
else {
temp1.sig = pilat;
}
pilat = temp1;
top
= top.sig;
temp
= top;
}
top =
top.sig; // Elimino
temp1 =
pilat;
while (temp1 != null) {
temp
= new Nodo();
temp.dato = temp1.dato;
if
(top == null) {
temp.sig = null;
}
else {
temp.sig = top;
}
top
= temp;
pilat = pilat.sig;
temp1 = pilat;
}
//imprime
temp = top;
System.out.println("Pila eliminada el
elemento " + buscar);
while (temp !=
null) {
System.out.println(temp.dato);
temp = temp.sig;
}
}
}
Corrida
No hay comentarios:
Publicar un comentario