| CÓDIGO FUENTE - Colas en C++ (con array's) |
/* Esta clase emula una cola, tiene los métodos necesarios para su manejo.*/
const int N=50; class cola2 { private: int acola[N]; int frente; int final; public: cola2(); ~cola2(); void encolar(int x); int desencolar(); void imprimir(); }; cola2::cola2() { frente=-1; final=-1; } cola2::~cola2() {} void cola2::encolar(int x) { if(final==N-1) cout<<"La cola esta llena"<<endl; else { if(frente==-1) frente=0; final++; acola[final]=x; } } int cola2::desencolar() { int k; if(frente!=-1) { k=acola[frente]; if(frente==final) { frente=-1; final=-1; } else frente++; return k; } } void cola2::imprimir() { int j; if(frente==-1) cout<<"La cola esta vacia"<<endl; else { for(j=frente;j<=final;j++) cout<<acola[j]<<" -> "; cout<<"nulo"<<endl; } } |
| COMENTARIOS |
- Se recomienda poner esta clase en archivo de cabecera (header), para crear objetos desde la función principal.
- N es una constante declarada como pública, sirve para poder declarar el array con el que funciona la cola. La ventaja de esta constante es que podríamos redefinir el array en el momento que lo necesitemos.
- Esta clase tiene cierta limitación por el hecho de trabajar con matrices, tiende a ser estática, se recomienda trabajar con nodos (estructuras) en vez de array's, como esta en otro ejercicio de está página.
- Cualquier duda o consulta que tengas, escribeme
Esta dirección electrónica esta protegida contra spambots. Es necesario activar Javascript para visualizarla
|
Última actualización el Jueves 07 de Septiembre de 2006 21:55