sábado, 4 de julio de 2015

Realización de un cola usando Nodos en Java



Primero hay que tener claro que son nodos , es un método recursivo para crear una colección de elementos del tipo que se desee como son int, String. los mas conocidos y trabajados en el rato de aprender programación java.

Creación de un Nodo tipo int:


//metodo recursivo 
static class Nodo {
int dato; 
Nodo sig; 
}


Si creamos un nodo estaremos hablado de un par de elementos donde int dato; es en donde se almacena en numero en este caso, Nodo sig; es donde se almacena la dirección de un nuevo nodo de la misma forma con dos parte su respectivo int y Nodo.


antes de utilizar este método se tiene que tener claro que al ser un método recursivo utiliza un parte de la memoria en donde almacena los datos es decir si se ingresa muchos datos como por ejemplo 1000000 datos int, se podría hablar de una sobrecarga de datos. Una ves aclarado esto acá esta un ejemplo de como crear un cola de 5 elementos pares;


public static void main(String[] args) {


int n = 5; int m = 2; //creacion de la cola usando nodos 
Nodo top = null;//declaramos el nodo principal 
Nodo ultimo = null;
 for (int i = 1; i <= n; i++) { 
Nodo temp = new Nodo();// creando un nodo temp para guardar el dato y después agregarlo a top temp.dato = i * m; 
temp.sig = null;
 if (top == null) {
 top = temp; 
} else { 
ultimo.sig = temp; }
 ultimo = temp; }
 System.out.println("Cola creada:");

//Imprimiendo la cola creada
int cont = 1;

while (top != null) { 
System.out.println(cont + ")" + top.dato);
 top = top.sig;
 cont++; }

}


Después de este ejemplo en java basta decir que en la parte de imprimir la cola se esta haciendo un recorrido a toda la cola por tanto si se intenta hacer una modificación se dará un error por eso lo mas recomendable es realizar un método aparte que imprima la cola.


public void imprimir(Nodo impr2) { 
int cont = 1; 
while (impr2 != null) {
 System.out.println(cont + ")" + impr2.dato);
 impr2 = impr2.sig; 
cont++; } 
}


La llamada a este método es sencilla con dos lineas de código en el método main:


NombreDeLaClase impri=new NombreDeLaClase();
System.out.println("Cola creada:");
impri.imprimir(top);//llamada al método de impresión

Con estas lineas de código se puede asegurar que se tendrá el cursor de la cola siempre en el inicio de la cola con eso se podrá realizar diversas acciones como eliminar ,modificar y aumentar elementos a la cola.

No hay comentarios:

Publicar un comentario