init projet

This commit is contained in:
2024-10-06 15:32:20 +02:00
commit d449d4b10a
84 changed files with 13546 additions and 0 deletions

45
tp3/TP3/queue.h Normal file
View File

@@ -0,0 +1,45 @@
/*********************************************/
/** Implémentation des files par un tableau **/
/*********************************************/
#ifndef DEQUEUE_H_
#define DEQUEUE_H_
#include <stdbool.h>
////////////////////////
// Définition du type //
////////////////////////
typedef struct {
int *array; // Tableau des valeurs.
int size_array; // Taille du tableau des valeurs.
int left; // Indice de la valeur à gauche de la file (si non-vide).
int right; // Indice qui suit celui de la valeur à droite de la file
// (si elle est non-vide).
bool empty; // Booléen indiquant si la file est vide.
} queue;
//////////////////////////
// Fonctions primitives //
//////////////////////////
// Crée une file vide.
queue *create_queue(void);
// Libère la mémoire allouée pour la file.
void delete_queue(queue *);
// Renvoie le nombre d'éléments dans la file.
int getsize_queue(const queue *);
// Renvoie vrai si la file est vide, faux sinon.
bool isempty_queue(const queue *);
// Ajoute une valeur dans la file, à gauche de la valeur la plus à gauche.
void enqueue(int, queue *);
// Renvoie la valeur la plus à droite de la file et la retire.
int dequeue(queue *);
#endif // DEQUEUE_H_