Nodo Generico
public class Nodo<T> {
private T info;
private Nodo siguiente;
public Nodo(T info) {
this.info = info;
siguiente = null;
}
public Nodo(T info, Nodo<T> siguiente) {
this.info = info;
this.siguiente = siguiente;
}
public T getInfo() {
return info;
}
public void setInfo(T info) {
this.info = info;
}
public Nodo getSiguiente() {
return siguiente;
}
public void setSiguiente(Nodo<T> siguiente) {
this.siguiente = siguiente;
}
}
Clase
Cola Generica
public class Cola<T> {
private Nodo<T> primero;
private Nodo<T> ultimo;
public Cola() {
primero = null;
ultimo = null;
}
public void encolar(T x) {
Nodo<T> nuevo = new Nodo(x, null);
if (primero == null) {
primero = nuevo;
} else {
ultimo.setSiguiente(nuevo);
}
ultimo = nuevo;
}
public T desencolar() {
T x;
Nodo<T> temp;
x = primero.getInfo();
temp = primero;
primero = primero.getSiguiente();
temp = null;
if (primero == null) {
ultimo = null;
}
return x;
}
public void mostrar() {
Nodo<T> p = primero;
while (p != null) {
System.out.println(p.getInfo());
p = p.getSiguiente();
}
}
public boolean esVacia() {
if (primero == null) {
return true;
} else {
return false;
}
}
}
Programa
que usa la cola:
import java.util.Scanner;
public class ProyectoColasGenericas {
public static void main(String[] args) {
int op, x;
Scanner entrada = new Scanner(System.in);
Cola<Integer> cola = new Cola();
do {
System.out.println("Menu Colas");
System.out.println("[1] Encolar");
System.out.println("[2] Desencolar");
System.out.println("[3] Mostrar");
System.out.println("[4] Salir");
System.out.print("Ingrese opcion : ");
op = entrada.nextInt();
switch (op) {
case 1:
System.out.print(" Ingrese numero : ");
x = entrada.nextInt();
cola.encolar(x);
break;
case 2:
if (!cola.esVacia()) {
x = cola.desencolar();
System.out.println("Dato desencolado : " + x);
} else {
System.out.println("Lac cola esta vacia");
}
break;
case 3:
System.out.println(" Datos de la cola");
cola.mostrar();
break;
}
} while (op != 4);
}
}
sábado, 16 de diciembre de 2017
Home »
» Crear una cola donde se pueda agregar, eliminar y mostra
Crear una cola donde se pueda agregar, eliminar y mostra
Buscar este blog
Con tecnología de Blogger.
Blog Archive
- enero ( 4 )
- diciembre ( 33 )
- octubre ( 3 )
- septiembre ( 1 )
¿Y en qué parte se implementará?
ResponderBorrarmuchas gracias por la apotacion!
ResponderBorrar