• Aucun résultat trouvé

TD – LES TRIS

N/A
N/A
Protected

Academic year: 2022

Partager "TD – LES TRIS"

Copied!
2
0
0

Texte intégral

(1)

Fénelon Sainte-Marie 2016-2017

MP*/PC-PC*/PSI* [1-2] Marc Lichtenberg

TD – LES TRIS

1 ère partie

Introduction et objectifs

Ce TD consacré au tri à bulle et au tri par insertion vise deux objectifs principaux :

• Coder les algorithmes de ces tris vus en cours.

• Vérifier expérimentalement leur complexité.

Tri à bulle

Exercice N°1 – Codage du tri à bulle

Ecrire une fonction tri_bulle recevant comme argument une liste L d’entiers deux à deux distincts et retournant cette même liste triée (ordre croissant) selon la méthode du tri à bulle.

On tiendra bien sûr compte des cas particuliers (liste vide ou ne contenant qu’un élément).

Le script contenant la fonction affichera la liste initiale (avant l’appel de la fonction) et la liste triée (après l’appel de la fonction).

Exercice N°2 – Etude expérimentale de la complexité moyenne du tri à bulle Modifier le programme écrit à l’exercice précédent de façon à exécuter plusieurs tris et à fournir :

• le nombre moyen de comparaisons effectuées divisé par le carré du nombre d’entiers à trier (le résultat doit être proche de 1

2 ).

• Le nombre moyen d’inversions effectuées divisé par le carré du nombre d’entiers à trier (le résultat doit être proche de 1

4 ).

Les nombres totaux de comparaisons et d’inversions effectuées seront mémorisés dans des variables globales.

On effectuera typiquement 100 à 500 tris (variable ntris) sur des tableaux de 1000 éléments

environ (variable n).

(2)

TD – Tris – 1

ère

partie / Sujet

Fénelon Sainte-Marie 2015-2016

MP*/PC-PC*/PSI* [2-2] Marc Lichtenberg

Tri par insertion

Exercice N°3 – Codage du tri par insertion

L’essentiel du code du tri par insertion a été vu en cours. Ecrire une fonction tri_insert recevant comme argument une liste L d’entiers deux à deux distincts et retournant cette même liste triée (ordre croissant) selon la méthode du tri par insertion.

On tiendra bien sûr compte des cas particuliers (liste vide ou ne contenant qu’un élément).

Le script contenant la fonction affichera la liste initiale (avant l’appel de la fonction) et la liste triée (après l’appel de la fonction).

Exercice N°4 – Complexité moyenne du tri par insertion

Modifier le programme écrit à l’exercice précédent de façon à exécuter plusieurs tris et à fournir le nombre moyen de comparaisons effectuées divisé par le carré du nombre d’entiers à trier (le résultat doit être proche de 1

4 ).

Le nombre total de comparaisons effectuées sera mémorisé dans une variable globale.

On effectuera typiquement 100 à 500 tris (variable ntris) sur des tableaux de 1000 éléments

environ (variable n).

Références

Documents relatifs

Le fichier joint contient les donn´ ees permettant de tracer le spectre d’´ emission du soleil (i.e.. En utilisant la fonction indice max(liste) d´

b) Sur un tas binaire, écrivez l'algorithme d'un traitement récursif propMax(i) permettant d'assurer qu'à partir de l'indice i chaque élément du tableau est

On pose le nombre de 9 terminant l’écriture décimale de , et le nombre précédant tous ces 9 dans cette écriture décimale. On remarque en particulier que ne finit donc pas

On retient pour commencer les trois seuls facteurs premiers 2,3 et 5 et on constate qu’à partir de (Λ) il est impossible de trouver une liste (L) qui respecte le lemme (L)..

Déduire de ce qui précède le théorème de Miquel suivant

Les deux op´ erations de base utilis´ ee utilis´ ees pour inverser une matrice sont l’´ echange de deux lignes et l’ajout une ligne ` a une autre.. Ecrivons

BCPST R´ esolution de syst` emes et inversions de matrice 2016-2017 Le but de ce TP est de finir le dernier TP en ´ ecrivant l’ensemble des algorithmes sur les matrices vus dans

[r]