Vous êtes sur la page 1sur 33

M.

DAHMANI SOUFIANE
dahmani.soufiane@gmail.com
Lycée Omar Ibn Abdelaziz- CPGE
OUJDA
2
 1-Tri par sélection
 2-Tri par insertion
 3-Tri par bulles
 4-La recherche dichotomique

3
 L'une des opérations les plus courantes en
programmation est le tri d'objets. Un
algorithme de tri consiste en une suite finie
d'opérations permettant d'organiser une
collection d'objets selon un ordre
prédéterminé.
 Par conséquent, les objets à trier font partie
d'un ensemble muni d'une relation d'ordre
comme, par exemple, l'ordre numérique.

4
 Le tri par sélection est l'un des algorithmes
de tri les plus simples et procède comme suit:

5
 L'idée de cette méthode de tri consiste à :
rechercher l'élément le plus petit de la liste, le
placer en début de la liste, recommencer avec
le second plus petit, le placer en seconde
position et ainsi de suite jusqu'à avoir
parcouru la totalité de la liste.
 Cette méthode porte le nom de tri
par sélection car elle procède à la sélection
successive de l'élément minimal parmi ceux
restants.

6
9 30 0 1 50 8 4

9 30 0 1 50 8 4

i min

0 30 9 1 50 8 4


7
8
9
Algorithme Tri_selection
Var : T Liste
N entier
Début
pour i ← 0 à N– 1faire
min ← i
pour j de i + 1 à N
siT[j] <T[min]alors
min ← j
finpour
échanger T[i] et T[min]
fin pour
Fin

10
def Tri_Selection(T) :
for i inrange(len(T)-1) :
min=i
for j inrange(i+1,len(T)) :
if T[j]<T[min] :
min=j
#Permutation
T[i],T[min]=T[min],T[i]

11
12
 Principe :
 Le tri par insertion consiste à insérer le
premier élément à trier au premier
emplacement d’une nouvelle liste, puis on
insère chaque nouvel élément à sa bonne
place dans la liste déjà triée. On réitère alors
le procédé jusqu’à avoir remplacé tous les
éléments de la liste initiale.

13
14
15
AlgorithmeTri_Insertion
Var : T Liste
N entier
Début
pour i ←1 à N-1 faire
j ← i-1
tant que j >= 0 et T[j] >T[j+1] faire
échanger T[j] et T[j+1]
j←j-1
fin tant que
fin pour
Fin

16
17
 Voici les étapes de l’exécution du tri par
insertion sur le tableau T=[9,6,1,4,8] Le
tableau est représenté au début et à la fin de
chaque itération.

18
def Tri_Insertion(T) :
for i inrange(len(T)) :
j=i-1
while (j>=0 and T[j]> T[j+1]) :
#Permutation
T[j],T[j+1]=T[j+1],T[j]
j=j-1

19
 Principe
 Le principe du tri à bulles est de comparer
deux valeurs adjacentes et consécutives (v1
et v2) et d'inverser leur position si elles sont
mal placées (c.à.d. v1>v2). On continue de
trier jusqu’à ce qu’il n’y ait plus de
permutation.

20
21
22
23
24
 Principe
 La recherche dichotomique est une manière
efficace et rapide de rechercher un élément dans
une structure de données triée (pour nous, ce sera
un tableau trié).
 Cette recherche consiste à comparer l'élément
cherché avec l'élément central de la liste. Si
l'élément cherché lui est inférieur, il doit se trouver
dans la première moitié de la liste; si l'élément
cherché lui est supérieur, il doit se trouver dans la
deuxième moitié de la liste. En appliquant
récursivement cette technique à la moitié choisie,
l'algorithme aboutira soit à la position de l'élément
cherché, soit à aucune position auquel cas
l'élément n'appartient pas à la liste.
25
 Dans le tableau ci-dessous on veut chercher
la valeur 40:

26
27
28
29
30
31
32
 http://www.fil.univ-
lille1.fr/~marvie/python/chapitre1.html#
 http://fsincere.free.fr/isn/python/cours_pyth
on_ch4.php
 https://perso.esiee.fr/~georgesj/esiee/b1st0
1/tp4_sol.pdf
 http://apprendre-python.com/page-
apprendre-listes-list-tableaux-tableaux-
liste-array-python-cours-debutant

33

Vous aimerez peut-être aussi