Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
tc_info:tp7b [2019/11/27 14:55] – créée cjazzar | tc_info:tp7b [2019/11/28 09:38] (Version actuelle) – ancienne révision (2019/11/27 13:57) restaurée edauce | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ==== TP7 : deques/tri par paquets/ Fibonacci | ||
+ | |||
+ | ===EXO1=== | ||
+ | Afin de manipuler correctement les deques il est demandé de programmer les différentes fonctions vues en TD dans l'exos sur les TODO listes. | ||
+ | ===1) Base de travail=== | ||
+ | Ecrire les fonctions de base de cette structure de données. | ||
+ | <note > | ||
+ | * Ajout_en_tete | ||
+ | * Ajout_en_fin | ||
+ | * Retrait_en_tete | ||
+ | * Retrait_en_fin | ||
+ | </ | ||
+ | ===2) Fonctions de ma TODO liste=== | ||
+ | |||
+ | Nous avions énoncé quelques contraintes: | ||
+ | < | ||
+ | * Je veux pouvoir mettre une action à réaliser en priorité absolue | ||
+ | * Je veux pouvoir, quand je prends une action à réaliser, la comparer avec la suivante et choisir entre les deux et remettre celle qui je ne fais pas en tête de liste, ou si vraiment je ne me sens pas une envie débordante de la réaliser en fin de liste | ||
+ | * Vérifier la dernière tâche ajoutée | ||
+ | </ | ||
+ | Il faut donc se servir des fonctions définies au 1) | ||
+ | pour écrire | ||
+ | <code python> | ||
+ | def ajout(toDoListe, | ||
+ | ''' | ||
+ | </ | ||
+ | <code python> | ||
+ | def done(toDoListe, | ||
+ | ''' | ||
+ | </ | ||
+ | <code python> | ||
+ | def verif(toDoListe): | ||
+ | ''' | ||
+ | </ | ||
+ | faire un petit programme qui permet de vérifier toutes ces fonctions. | ||
+ | |||
+ | ===EXO2=== | ||
+ | Tri par Paquets (vu en TD7) | ||
+ | Principe: | ||
+ | < | ||
+ | * Le tri à bulles trie sur place | ||
+ | * Le tri par paquets ne trie pas sur place | ||
+ | * **Qu' | ||
+ | ** | ||
+ | </ | ||
+ | Il faut donc deux fonctions | ||
+ | <code python> | ||
+ | def tri_bulle(T): | ||
+ | </ | ||
+ | <code python> | ||
+ | def tri_par_paquet(T): | ||
+ | </ | ||
+ | |||
+ | On veut comparer les temps d' | ||
+ | <code python> | ||
+ | import time | ||
+ | </ | ||
+ | et utiliser | ||
+ | <code python> | ||
+ | | ||
+ | </ | ||
+ | |||
+ | Pour générer la liste utiliser np.random.randn() | ||
+ | et ajouter | ||
+ | <code python> | ||
+ | import numpy as np | ||
+ | </ | ||
+ | |||
+ | ===EXO3=== | ||
+ | |||
+ | Programmer la fonction Fibonnaci de manière récursive et de manière itérative | ||