Ir para conteúdo
Fórum Script Brasil
  • 0

Inverter Fila


RS25

Pergunta

Pessoal,

Preciso de uma função para inverter uma fila

Segue 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 pilha

Alguém poderia me ajudar?

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

beleza RS25

Você 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)

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...