TP5 exo4: Implement recursive search function inside a linked list
authorJérôme Benoit <jerome.benoit@piment-noir.org>
Tue, 7 Mar 2017 22:34:44 +0000 (23:34 +0100)
committerJérôme Benoit <jerome.benoit@piment-noir.org>
Tue, 7 Mar 2017 22:34:44 +0000 (23:34 +0100)
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
TP5/exo4/liste_chainee.c
TP5/exo5/pile_chainee_a_completer.c
TP5/exo6/file_chainee_a_completer.c

index 587cac341053de858d7805beec069d669232dddc..c04ccc2db85d58c293b05959fa27df0fe9ce8a20 100644 (file)
@@ -109,6 +109,10 @@ bool rechercher_iter(element e, Liste L)
 
 Liste rechercher_rec(element e, Liste L)
 {
+       if (L->valeur != e && L->suivant != NULL)
+       {
+               return L = rechercher_rec(e, L->suivant);
+       }
 }
 
 Liste ajouter_rec(element e, Liste L)
@@ -154,6 +158,10 @@ int main()
                printf("L'element %d est present dans L\n", x);
        else
                printf("L'element %d n'est pas present dans L\n", x);
+       if (rechercher_rec(x, L) != NULL)
+               printf("L'element %d est present dans L\n", x);
+       else
+               printf("L'element %d n'est pas present dans L\n", x);
        /* ... */
 }
 
index 3f2a5fb0fc2a0403775c879f55be25ae34a52271..15bbf06492fb0ee8546462fda50dfee64f87c7bf 100644 (file)
@@ -38,7 +38,8 @@ Pile depiler(Pile p)
 }
 
 element depiler2(Pile * p)
-{                              /*ATTENTION: la pile est modifiée */
+{
+       /* ATTENTION: la pile est modifiée */
        /* ATTENTION: cette opération n'a pas de sens avec une pile vide */
 }
 
index 34bffcac7eacb0afb47cc71aa1efcb1a1eea53b1..16f72c95e97a0b7555e52b08442c37a84b793467 100644 (file)
@@ -48,7 +48,8 @@ File defiler(File f)
 }
 
 element defiler2(File * f)
-{                              /* ATTENTION: la File est modifiée */
+{
+       /* ATTENTION: la File est modifiée */
        /* ATTENTION: supprimer la tête d'une File vide n'a pas de sens */
 }