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
|
|
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 ».
|
|
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).
|
|
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 :
Une file est une structure de données abstraite dans laquelle les données sont organisées comme le seraient des personnes dans une file d’attente (au guichet de la poste par exemple) :
[Lire]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 :
Une pile est une structure de données abstraite dans laquelle les données sont organisées comme le seraient des assiettes dans une pile d’assiettes contenue dans une boite de profondeur quelconque mais étroite (ce qui empêche de manipuler les assiettes par le côté).
On peut donc seulement :
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)$ |
Remarque : Dans la suite de ce document, on va considérer que la liste Python tab
, créé par l’instruction tab = [i for i in range(20)]
est de longueur fixe. Elle se comporte alors comme un tableau.
Python possède dans la bibliothèque standard un grand nombre de structures de données, programmées de manière efficace.
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]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 :
|
|
On représente de la même façon le zoo de La Flèche :
|
|
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.
Par exemple