Réalisation d'une classe Liste Chainee

Par transformation des fonctions du document 1 dans ce chapitre en méthodes, écrire le code de la classe Liste qui définit le type abstrait « Liste chaînée ». Réponse 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 from __future__ import annotations class Maillon: """ Un maillon de la liste. [Lire]

Implémentation du type abstrait Liste Chaînée à l'aide de listes Python

Reprendre toutes les fonctions des sections 2 et 3 du document 1 de ce chapitre, en implémentant cette fois le type abstrait « Liste chaînée » à l’aide de tuples (à la place de la classe). Réponse 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 def est_dans(tab: list[int], val: int) -> bool: """ Recherche la présence de val dans tab. [Lire]

Les Files

Rappel : Type de Données Abstrait (TDA) Une structure de données ou type de données abstrait est un moyen d’organiser et de manipuler les données en mémoire. Un TDA est donc définit par : Son nom ; Sa spécification, c’est à dire la liste des manipulations/opérations que l’on peut ou pas effectuer. La spécification indique généralement la complexité de chacune des opérations prévues par le TDA. Un type de données abstrait ne dépend pas de la manière dont la structure de données est implémentée dans le langage de programmation utilisé. [Lire]

Les Piles

Rappel : Type de Données Abstrait (TDA) Une structure de données ou type de données abstrait est un moyen d’organiser et de manipuler les données en mémoire. Un TDA est donc définit par : Son nom ; Sa spécification, c’est à dire la liste des manipulations/opérations que l’on peut ou pas effectuer. La spécification indique généralement la complexité de chacune des opérations prévues par le TDA. Un type de données abstrait ne dépend pas de la manière dont la structure de données est implémentée dans le langage de programmation utilisé. [Lire]

Listes Chaînées, présentation

... et implémentation à l'aide d'une classe

Tableaux Un tableau est une structure de données dans laquelle les éléments, tous de même type, occupent des positions contiguës en mémoire. Le nombre d’éléments qu’un tableau peut contenir est déterminé à la création d’un tableau. Type Python Type Opération Exemple Complexité N’existe pas Tableau Accès à un élément tab[i] $O(1)$ Modification d’un élément tab[i] = x $O(1)$ Effacement d’un élément retire(tab, i) $O(n)$ Insertion d’un élément insere(tab, x, i) $O(n)$ Recherche d’un élément est_dans(tab, x) $O(n)$ La structure de données appelée « liste » dans le langage Python est implémentée à l’aide de tableaux dynamiques. [Lire]

Structures de données fournies avec le langage Python

Python possède dans la bibliothèque standard un grand nombre de structures de données, programmées de manière efficace. Rappels : modules, fonctions Pour chaque module, on distingue : sa réalisation (ou implémentation) : c’est le code lui-même. son interface (API) : c’est l’énumération des fonctions définies dans le module qui sont utilisées depuis d’autres modules/programmes, les clients. L’interface doit présenter une documentation dans laquelle tout ce que doit savoir le client doit être indiqué. [Lire]

Itérer sur les éléments d'un dictionnaire

Au zoo de Beauval, il y a 5 éléphants d’Asie, 17 écureuils d’Asie, 2 pandas d’Asie, etc. On représente cet inventaire à l’aide d’un dictionnaire, de façon suivante : 1 2 3 4 5 6 7 zoo_Beauval={ 'éléphant': ('Asie', 5), 'écureuil': ('Asie', 17), 'panda': ('Asie', 2), 'hippopotame': ('Afrique', 7), 'girafe': ('Afrique', 4) } On représente de la même façon le zoo de La Flèche : 1 2 3 4 5 6 zoo_LaFleche = { 'ours': ('Europe', 4), 'tigre': ('Asie', 7), 'girafe': ('Afrique', 11), 'hippopotame': ('Afrique', 3) } On souhaite se doter d’une fonction plus_grand_nombre() qui prend un zoo en paramètre et qui renvoie le nom de l’animal le plus représenté dans ce zoo. [Lire]