12.3 Récursivité avec les chaînes et les listes
Objectifs d'apprentissage
À la fin de cette section, vous devriez être en mesure de :
- Démontrer l'utilisation de la récursivité pour résoudre un problème sur les chaînes de caractères.
- Démontrer l'utilisation de la récursivité pour résoudre un problème sur les listes.
- Utiliser la fonction de liste intégrée
count().
Récursivité avec les chaînes de caractères
Un mot qui s'écrit de la même façon à l'endroit et à l'envers est appelé un palindrome. Ex. : racecar.
La récursivité peut être utilisée pour déterminer si un mot donné est un palindrome.
Concepts en pratique
Récursivité avec les chaînes
Reportez-vous à l'animation ci-dessus.
Récursivité avec les listes
L'animation ci-dessous montre une méthode récursive pour vérifier si deux listes contiennent les mêmes éléments mais dans un ordre différent.
La fonction count() renvoie le nombre d'éléments d'une liste qui correspondent à l'élément donné, et renvoie 0 sinon. Ex. : Pour list_num = [1, 3, 3, 4], list_num.count(3) renvoie 2.
Concepts en pratique
Permutations de listes
Reportez-vous à l'animation ci-dessus. Que renverrait permu_check() pour chaque paire de listes ci-dessous ?
À vous d'essayer
Supprimer les doublons
Écrivez une fonction récursive rem_dup() qui supprime les doublons d'une liste.
Ex. : La liste [5, 5, 2, 1, 3, 1, 6] devrait donner la liste de sortie [5, 2, 1, 3, 6].