diff --git a/slides/cours_7.md b/slides/cours_7.md index 016c2140e8d5934869e95c9fc7332716d003f4b9..9d012b97027cde9112af8396f3aac4bafaf70277 100644 --- a/slides/cours_7.md +++ b/slides/cours_7.md @@ -36,8 +36,8 @@ triés du tableau. . . . ```C -void tri_insertion(int size, int tab[size]) { - for (int i = 1; i < size; i++) { +void tri_insertion(int N, int tab[N]) { + for (int i = 1; i < N; i++) { int tmp = tab[i]; int pos = i; while (pos > 0 && tab[pos - 1] > tmp) { @@ -55,13 +55,14 @@ void tri_insertion(int size, int tab[size]) { . . . -* Parcours de tous les éléments (ordre $N$); placer (ordre $N$). -* Moyenne: $\mathcal{O}(N^2)$. +* Parcours de tous les éléments ($N-1$ passages dans la boucle) + * Placer: en moyenne $i$ comparaisons et affectations à l'étape $i$ +* Moyenne: $\mathcal{O}(N^2)$ . . . -* Pire des cas, liste triée à l'envers: $\mathcal{O}(N^2)$, -* Meilleurs des cas, liste déjà triée: $\mathcal{O}(N)$, +* Pire des cas, liste triée à l'envers: $\mathcal{O}(N^2)$ +* Meilleurs des cas, liste déjà triée: $\mathcal{O}(N)$ # L'algorithme à la main