• Aucun résultat trouvé

Sujet 02 : Insertion triée dans une liste simplement chaînée

N/A
N/A
Protected

Academic year: 2022

Partager "Sujet 02 : Insertion triée dans une liste simplement chaînée"

Copied!
1
0
0

Texte intégral

(1)

IUT des Pays de l’Adour - RT2

Informatique - Module IC2 - Algorithmique Avancée

Listes simplement chaînées

Sujet 02 : Insertion triée dans une liste simplement chaînée

Cette fois-ci nous allons travailler sur des listes simplement chaînées "de base", c’est-à-dire que nous allons écrire les primitives élémentaires permettant d’accèder à cette structure de données. La politique de gestion (i.e. LIFO ou FIFO) vient après. Autrement dit, les fonctions Empiler ou Depiler peuvent être définies à partir de ces primitives.

struct Cellule { float valeur;

struct Cellule *suivant;

}

typedef struct Cellule *Liste;

Travail demandé

1. Liste ConsVide(void) : Construit une liste vide (NULL).

2. int Vide(Liste l) : Indique si la listel est vide.

3. Liste Cons(float tete, Liste queue) : Construit une nouvelle liste dont la valeur de la première cellule est teteet dont le suivant seraqueue. Il s’agit d’un insertion en tête de liste.

4. float Tete(Liste l): Retourne la valeur en tête de liste (i.e. la valeur qui se trouve dans la première cellule).

5. Liste Queue(Liste l) : Retourne la queue de la liste, c’est-à-dire la liste l privée de sa première cellule (il s’agit donc du suivant de la première cellule).

6. void Editer(Liste l) : Affiche tous les éléments de la liste. Si possible, écrivez cette fonction de manière récursive.

7. int Taille(Liste l) : Compte le nombre d’éléments dans la liste (avec la récursivité c’est très simple. . .).

8. void Detruire(Liste l) : Détruit toutes les cellules de la liste (si elle n’est pas vide). Pour cette fonction, je vous conseille vivement d’envisager une solution récursive. . .

9. Liste Inverser(Liste l) : Construit une liste contenant les mêmes valeurs quel mais dans l’ordre inverse, i.e. (1,2,3,4)→(4,3,2,1).

10. void Inserer(Liste *l, float valeur) : Là, nous considérons que la liste l passée en paramètre est déjà triée (par construction, i.e. on est parti d’une liste vide et nous n’avons fait que des insertion triées). Cette fonction doit insérer la nouvelle valeur à sa place dans la liste.

1

Références

Documents relatifs

• premièrement c’est avoir une idée approfondie sur l’application de l’approche théorique dans le milieu professionnel ce qui nous permettra de comprendre et de maîtriser

Returns the index in this list of the first occurrence of the specified element, or -1 if the List does not contain this element. Retourner l’indice de la première occurence

– soit une copie d’un acte notarié établissant que vous êtes devenu(e), dans l’année précédant celle de l’élection, propriétaire d’un immeuble dans

Écrivez un constructeur de la classe Liste qui, à partir d’un tableau dynamique d’éléments, crée la liste contenant les mêmes éléments dans le même ordre.. Donnez un

L'avantage de la méthode boothroyd est complètement prédictive rapide et qu'elle peut être adaptée à différents matériaux, et nous avons conclu avec se modèle

Le fichier joint contient les donn´ ees permettant de tracer le spectre d’´ emission du soleil (i.e.. En utilisant la fonction indice max(liste) d´

Alors que, dans le monde entier, on travaille à l’éradication de la polio, ne tenons pas pour acquis les outils les plus puissants pour la prévention que

FICHIERS FICHIERS Mémoire de masse découpée en blocs Fichier : liste chaînée de blocs, ou.. arbre de blocs (répertoires