Skip to content

Colas cpp

RDLL edited this page Aug 18, 2023 · 2 revisions

Colas

Son una estructura líneal que puede ser dinámica o estática, para que sea dinámica se requiere de otra estructura llamada lista.

Tiene la carácteristica de que el primer elemento que entra es el primer elemento que sale (FIFO), como las colas en el supermercado.

Se difieren de la pila en que se recorren de abajo hacia arriba o del inicio al final.

Puedes encontrar los archivos aquí

Vamos a ver las funciones

void COLA::queue(float dato){
    if(llena())
        cout << "Cola llena\n";
    else{
        arr[fin] = dato;
        cout << arr[fin] << " insertado en " << fin;
        ++fin;
        cout << "\nNueva posicion: " << fin << '\n';
    }
}

Se llama a la función llena y si no lo está, ingresa el dato y aumenta el final.

void COLA::dequeue(){
    if(vacia())
        cout << "Cola vacia\n";
    else{
        cout << arr[frente] << " eliminado\n";
        ++frente;
    }
}

Se llama a la función vacia, en caso de que no lo este, imprime el elemento que se elimino y aumenta el frente.

bool COLA::llena(){
    if(fin >= tam){
        return true;
    }
    else{
        return false;
    }
}

La función llena simplemente evalua si fin que es la variable que nos ayuda a saber si la cola está llena o no, se sabe que la cola está llena cuando fin tiene el tamaño del arreglo.

bool COLA::vacia(){
    if(frente == fin)
        return true;
    else 
        return false;
}

La función vacia evalua cuando frente y fin son iguales, si es así quiere decir que esta vacia.