Listes Linéaires Chaînées : Affichage récursif

Description

Il est facile de concevoir des algorithmes récursifs pour les listes linéaires chaînées. En effet, une liste est un ensemble de nœuds identiques dont on se rappelle du premier comme étant "la tête de la liste". Mais, tout nœud de la liste peut être considéré comme la tête d'une liste plus petit; les éléments qui précèdent ce nœud ne deviennent plus visible comme s'il s'agit d'une liste plus petite. En partant de cette idée, il est facile de concevoir un algorithme pour afficher une liste linéaire chaînée : il suffit de traîter le nœud en cours et de faire la même chose pour le reste de la liste, c'est-à-dire, la liste qui a le nœud suivant comme tête. Le traitement dans ce cas est un simple affichage.
Il est possible de faire un affichage dans le sens inverse : en commençant par le dernier nœud en direction du premier nœud. L'idée est de laisser le traitement du nœud actuel et de la faire après le traitement du reste de la liste (de la liste qui a le n&ud suivant comme tête). Ainsi, il suffit d'inverser deux instructions dans la première procédure pour avoir le bon résultat.
Pour pouvoir tester ces deux procédures, il suffit de les mettre dans un programm complet qui définit le type Liste ainsi qu'un méthode de lecture. Dans l'exemple suivant, la procédure de lecture fait une insertion à la fin. Le programme principale permet de faire plusieurs lecture qui se terminent par un zéro (0) qui ne sera pas inséré dans la liste). Ensuite, il appelle les deux fonctions d'affichage.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.