Te dejo el code y tu lo examinas orale?
Es una cola circular hecha con un array, analizala un poco, no tiene mucha ciencia
al ser un array pues se puede utilizar un int como puntero, como es esto? pues simplemente un int me indicara el indice del array donde se encuentra el fin y otro int me indicara el frente de la cola...
class ColaCircular{
int max,frente,fin;
public void tamano(int n){
max=n;
frente=-1;
fin=-1;
}
if((fin==max-1 && frente==0) || (fin+1==frente)) {
System.
out.
println("overflow"); return;
}
if(fin==max-1 && frente!=0) {
fin=0;
}
else {
fin++;
colaCircular[fin]=o;
}
if(frente==-1){
frente++;
}
}
public void eliminar(){
if(frente==-1){
System.
out.
println("underflow"); return;
}
if(frente==fin) {
frente=-1;
fin=-1;
return;
}
if(frente==max){
frente=0;
}
else {
frente++;
}
}
if(frente==max){
System.
out.
println( "overflow"); return 0;
}
else{
return colaCircular[frente];
}
}
public boolean estaVacia(){
return frente==-1;
}
public boolean estaLlena(){
return (fin==max-1&&frente==0)||(fin+1==frente);
}
public void estatus(){
System.
out.
println("Frentre: "+frente
); System.
out.
println("Maximo: "+max
); }
}
checalo... Saludos!