Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
#ifndef FILALIGADA_H_INCLUDED #define FILALIGADA_H_INCLUDED #include "pilha.h" using namespace std; struct Node{ int info; Node *prox; }; struct Fila{ Node *inic; Node *fim; int c; Fila(); bool insere(int x); int remover(); int primeiro(); bool FilaVazia(); void mostraFila(); //PILHA Pilha p; void convertefila(); void ordenar(); void situacaopilha(); }; Fila::Fila(){ inic=NULL; fim=NULL; c=0; } bool Fila::FilaVazia(){ return inic==NULL; } bool Fila::insere(int x){ bool t=true; Node *aux=new Node; if(aux==NULL)t=false; else{ aux->info=x; aux->prox=NULL; if(inic==NULL) inic=aux; else fim->prox=aux; fim=aux; } return t; } int Fila::primeiro(){ return inic->info; } int Fila::remover(){ int t=inic->info; //primeiro da fila Node *aux=inic; inic=inic->prox; if(inic==NULL) fim=NULL; delete aux; return t; } void Fila::mostraFila(){ Node *aux=inic; c=0; while(aux!=NULL){ c++; cout<<c<<": "<<aux->info<<endl; aux=aux->prox; } } void Fila::convertefila(){ Node *aux=inic; if(!p.pilhaVazia()){ p.limparpilha(); } Node *aux2=inic; while(aux2!=NULL){ int t=aux2->info; p.empilha(t); aux2=aux2->prox; } } void Fila::ordenar(){ convertefila(); p.ordenapilha(); } void Fila::situacaopilha(){ p.mostrapilha(); cout<<endl<<"------"<<endl<<"Qtde: "<<p.getQtde()<<endl; cout<<"Topo: "<<p.getTopo()<<endl; } #endif // FILALIGADA_H_INCLUDED
Compartilhar