public Cola() { // Instanciamos el ancla ancla = new Nodito(); // Cómo es una cola vacia su siguiente es null ancla.Siguiente = null; }
public void Transversa() { // Trabajo al inicio trabajo = ancla; while (trabajo.Siguiente != null) { // Avanzamos trabajo trabajo = trabajo.Siguiente; Console.Write("<=={0} ", trabajo.Valor); } Console.WriteLine(); }
public int Peek() { // Esta version no contiene código de seguridad // Colocar una excepción cuando se intente hacer un Peek cuando el queue está vacío int valor = 0; // Llevamos a cabo el trabajo solo si hay elementos en la cola if (ancla.Siguiente != null) { // Obtenemos el dato correspondiente trabajo = ancla.Siguiente; valor = trabajo.Valor; } return(valor); }
public void Enqueue(int dato) { // Trabajo al inicio trabajo = ancla; // Recorremos hasta encontrar el final while (trabajo.Siguiente != null) { // Avanzamos trabajo hasta el final trabajo = trabajo.Siguiente; } // Creamos el nuevo elemento de cola Nodito newEnCola = new Nodito(); // Insertamos el dato newEnCola.Valor = dato; // El nuevo elemento apuntará a nulo ultimo nodo actual newEnCola.Siguiente = null; // El ultimo de la cola apuntará al nuevo ultimo trabajo.Siguiente = newEnCola; }