Beruflich Dokumente
Kultur Dokumente
1re Sance
Objets de Python :
Les chaine de caractres : est un objet non modifiable
La liste :est un objet qui peut contenir nimporte quels objet il est modifiable
1. L.append(X) L=L+[X]
2. L.remove(X) supprime 1re apparition de X
3. Del L[i] supprime un elt quil doit exister a la position i
4. X=L.pop(X) X=L[-1] et del L[-1]
5. X=L.pop(i) mme fonctionnement mais a lelt de position i
Tuple : un objet htrogne non modifiable
Dictionnaire :
1. D=dict() Dictionnaire vide
2. D=[cl]=valeur
D={cl :valeur}
Change de valeur si la cl existe
dans le dictionnaire
Les parcours :
Complexits :
1. Constante O(1) : nombre doprations est constate
2. Linaire O(n) : nombre doprations est a*n+b (a,b cte)
3. Quadratique O(n) : nombre doprations est a*n+b*n+c (a,b,c cte)
4. Logarithmique : O(log(n)) : taille des donnes divises par une cte a
chaque rptition de la boucle
Exemples classiques : passage entre les bases ; recherche dichotomique ;
expo rapide
Les Tris (1re anne ) :
Tri par slection :
Principe :
Chaque lments dindice i entre [0,n-2] est chang avec le plus
petit lt entre [i,n-1]
N.B : cest un tri en place qui cherche et compare i avec le min
(i+1,n)
M.El Meslouhi
Page 1
Def tri_selection(L) :
n=len(L)
for i in range (n-1) :
m=i
for j in range (i+1,n) :
if L[j]<L[m] :
m=j
L[i],L[m]=L[m],L[i]
Complexit :
Nombre de comparaison
Nombre dchange
Rsultat
Complexit :
Meilleures : (Liste dj
tri)
k=[n*(n-1)]/2
(quadratique)
n-1 (lineaire)
NB : si on a :
Def tri_selection(L) :
n=len(L)
for i in range (n-1) :
m=i
for j in range (i+1,n) :
if L[j]<L[m] :
m=j
if n !=i : # La complexit dchange sera null !!
L[i],L[m]=L[m],L[i]
2. Une fonction qui reoit en paramtre une liste (ou tableau) T, et qui
trie les lments de T dans lordre croissant, en faisant appel a la
fonction indice_max(t):
def tri_selection(t):
n=len(t)
for i in range(n-1,0,-1):
m=indice_max(t[:i+1])
t[i],t[m]=t[m],t[i]
M.El Meslouhi
Page 2
Def tri_insertion(L) :
n=len(L)
for i in range (1,n):
x=L[j]
j=i-1
while j>=0 and L[j]>x:
L[j+1]=l[j]
j=j-1
L[j+1]=x
Complexit :
Meilleures : (Liste dj
tri)
Nombre de comparaison
n-1 O(n) (lineaire)
Nombre daffectation
Rsultat
2*(n-1) (lineaire)
(lineaire) O(n)
La Complexit est
quadratique O(n)
Exercice : Le Tri par insertion
M.El Meslouhi
Page 3
M.El Meslouhi
Page 4