#include #include #include #include struct graphe{ int ordre; /*l'ordre du graphe*/ int** adj; /*la matrice d'adjacence, donnée par un double tableau dynamique*/ int oriente; /*vaut 0 si le graphe est non orienté, 1 sinon*/ }; typedef struct graphe graphe; struct file { int data; struct file* succ; }; typedef struct file fifo; fifo* enqueue(fifo **fi,int v){ fifo *nf=malloc(sizeof(fifo)); nf->data=v; nf->succ=*fi; return nf; } int dequeue(fifo **fi){ fifo *lect=*fi; if(lect->succ==NULL){ int res=lect->data; *fi=NULL; return res; } while(lect->succ->succ!=NULL){ lect=lect->succ; } int res=lect->succ->data; fifo *temp=lect->succ; lect->succ=NULL; free(temp); return res; } int empty(fifo *fi){ return fi==NULL; } void afficheFile(fifo *fi){ fifo *affichage=malloc(sizeof(fifo)); affichage=fi; while(affichage->succ!=NULL){ printf("%hu ",affichage->data); affichage=affichage->succ; }free(affichage); } fifo* fileVoisins(graphe g,int v){ fifo *res=malloc(sizeof(fifo)); int i; for(i=0;i