slack felix
usa Slackware
Post recolhido
Enviado em 27/05/2009 - 11:53h
Como você já deve saber uma fila é uma estrutura de dados do tipo lista, onde os elementos são inseridos no final dela e retirados do seu início, da mesma forma que acontece em uma fila de pessoas.
Basicamente o que você tem que implementar são uma classe No e uma classe Fila. Onde os nós possuirão uma informação de algum tipo (o qual você deve definir) e um ponteiro para o próximo No da Fila. Enquanto isso Fila terá dos ponteiros, para dois nós, o primeiro da Fila e o último.
class No
{
public:
No();
~No();
int get_info(); //Retorna uma informação de um nó
void set_info(int); //Inseri informação em um nó
No* get_prox(); //Retorna a referencia para o próximo nó
void set_prox(No*); //Modifica a referencia do próximo nó
private:
int info;
No* prox;
};
class Fila
{
public:
Fila();
~Fila();
No* get_primeiro();
No* get_ultimo();
void inserir(int);
void remover();
bool esta_vazia();
void imprimir();
private:
No* primeiro;
No* ultimo;
};
A implementação dos métodos fica por sua conta. Lembre-se que para inserir, como você quer uma fila ordenada, você precisa encontrar onde o novo elemento deve ser inserido.
Dê uma boa estudada em estruturas de dados ante de proseguir. Este link deve ajudar um pouco
http://www.icmc.usp.br/~sce182/index.html
Qualquer problema é só postar