Buscar

TIPO Abstrato de Dados (TAD) Fila Dinâmica em Linguagem C

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

/* 
 * File: TADFila.h
 * Author: joao
 *
 * Created on 11 de Fevereiro de 2016, 17:33
 */
#ifndef TADFILA_H
#define	TADFILA_H
#include<stdlib.h>
struct No {
 int info;
 struct No *prox;
 };
 typedef struct No No;
 //--------------------------------------------------------------------------
 void init(No **fila);
 void enqueue(No **fila, int info);
 void deenqueue(No **fila, int *info);
 char isEmpty(No *fila);
 //--------------------------------------------------------------------------
 //Recebe um ponteiro para uma fila como parametro e inicializa a fila
 void init(No **fila){
 *fila=NULL;
 }
 //Recebe um ponteiro para uma fila como parametro e uma informação a insere na fila
 void enqueue(No **fila, int info){
 No *nova=(No*)malloc(sizeof(No));
 No *aux;
 nova->info=info;
 nova->prox=NULL;
 
 if(*fila==NULL){
 *fila=nova;
 }else{
 aux=*fila;
 while(aux->prox!=NULL){
 aux=aux->prox;
 }
 aux->prox=nova;
 }
 }
 //Recebe um ponteiro para uma fila como parametro e o endereço para um inteiro e retira um elemento da fila
 void deenqueue(No **fila, int *info){
 No *aux;
 if(*fila!=NULL){ 
 aux=*fila;
 *info=(*fila)->info;
 *fila=(*fila)->prox;
 free(aux);
 }
 }
 //Recebe um ponteiro para uma fila como parametro e retorna 1 se estiver vazia
 char isEmpty(No *fila){
 return(*fila==NULL);
 }
 
#ifdef	__cplusplus
extern "C" {
#endif
#ifdef	__cplusplus
}
#endif
#endif	/* TADFILA_H */

Continue navegando

Outros materiais