RS25 Postado Maio 6, 2011 Denunciar Share Postado Maio 6, 2011 Pessoal,Preciso de uma função para inverter uma filaSegue o que eu consegui até agora#include <stdio.h> #include <stdlib.h> #include "fila.h" void inverte (Fila *f) { Fila p; p.inicio=f->inicio; p.fim=f->fim; for (int i=p.inicio; i<p.fim; i++) p.itens[i] = retira_fila(&f); for (int i=p.inicio; i<p.fim; i++) insere_fila(&f, retira_pilha(&p)); } main() { Fila* f1 = fila_cria(); Fila* f5 = fila_cria(); Fila* finverte; fila_insere(f1, 2.1); fila_insere(f1, 4.5); fila_insere(f1, 1.0); printf("\n\nFila f1:\n"); fila_imprime(f1); finverte = inverte_fila(f1); printf("\n\nFila f4:\n"); fila_imprime(finverte); //fila_libera(f4); fila_libera(f1); getch(); }Só que esta com erro e só pode utilizar fila não pode usar o principio de pilhaAlguém poderia me ajudar? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 William Rodrigues Postado Maio 11, 2011 Denunciar Share Postado Maio 11, 2011 (editado) Saudações,Qual seria o tipo da fila? :blink: Abraços,William Rodrigues. Editado Maio 11, 2011 por William Rodrigues Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jrsilvamg Postado Maio 13, 2011 Denunciar Share Postado Maio 13, 2011 beleza RS25Você pode usar uma recursividade para fazer isto.Exemplo imprimir de 1 a 10 do maior pro menor.Código#include <stdio.h> #include <stdlib.h> void volta(int x); int main(int argc, char *argv[]){ int x = 0; volta(x); system("PAUSE"); return 0; } void volta(int x){ if (x==10) return; if (x < 10){ x++; volta(x); } printf("[%d]\n", x); }ok!!!! B) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
RS25
Pessoal,
Preciso de uma função para inverter uma fila
Segue o que eu consegui até agora
Só que esta com erro e só pode utilizar fila não pode usar o principio de pilha
Alguém poderia me ajudar?
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.