jueves, 24 de octubre de 2013

Solucion Parcial Numero dos.


Solución Parcial Numero dos.

Figura numero 9

En el parcial realizado el día miércoles 16 de octubre año 2013 se evaluaron dos punto uno sobre cola y otro sobre pila.
primer punto : Desarrolle una función Java, para intercambiar los elementos de los extremos en una cola. solo se puede usar colas y variables simples, primitivas, Object y envolventes.

Solución.

public static void intercambiarExtremos(Cola c){
Object aux1;
Object aux2=null;
Cola <Object> q = new Cola<>();
aux1=c.quitar();
while(!c.vacia()){
aux2=c.quitar();
if(!c.vacia()){
q.poner(aux2);
}
}
c.poner(aux2);
while(!q.vacia()){
c.poner(q.quitar());
}
c.poner(aux1);
}

Segundo punto: Defina la clase Pila en base a la clase Lista.

public class PilaLista <T>{
Lista<T> l = new Lista ();
public PilaLista() {
}
public boolean vacia(){ return l.vacia(); }
public void poner(T dato){
l.insertarInicio(dato, null);
}
public T cima(){ l.reiniciar();
T dat = null;
if(!vacia()){
dat = l.infor();
} else {
System.out.println("Pila Vacia");
}
return l.infor();
} 
public T quitar(){
l.reiniciar();
T date = null;
if(!vacia()){
date = l.infor();
l.eliminar();
} else {
System.out.println("Pila Vacia");
}
return date;
}

public static void main (String ae []){
PilaLista <String> pl = new PilaLista();
pl.poner("Carlos");
pl.poner("jose");
pl.poner("mendoza");
pl.poner("torres");
pl.poner("Estudiante");
pl.poner("Sistema");
pl.poner("Informacion");

System.out.println("cima ->" + pl.cima());

while(!pl.vacia()){
System.out.print(" "+pl.quitar());
}
System.out.println();

}

Apreciaciones importantes y reflexión:

en el primer punto  declaramos dos variables de tipo Objecto una que guardara el primer dato que se encuentra en la cola, la otra guardara el ultimo dato que se encuentra en la cola, también es necesario una cola auxiliar que guardara los datos intermedios, se saca el primer dato cuando se realiza la siguiente instrucción aux1=c.quitar(); luego los demás datos son sacados mediante una estructura repetitiva guardándolos primero en la segunda variable auxiliar y  se va preguntando si la cola no se encuentra vacía en caso de que se cumpla se pone en q los datos que se van sacando.
cuando termina de sacar los datos la variable aux2 almacena en ella el ultimo dato y es almacenado inmediatamente en la cola original, se ponen los datos intermedios y por ultimo se coloca el dato que almacena aux1 que era el primero ahora pasara de ultimo.

En el segundo punto se mostró una pila en base a la clase lista, lo cual era una actividad que se dejo para afianzar en nuestro estudio.

No hay comentarios:

Publicar un comentario