= TD7 == Exercice 1 Dans le cas où la liste est déjà triée == Exercice 2 En mélangeant, on exclue les cas spécifiques qui peuvent arriver comme à la question 1. La taille de la première partition suis alors une simple loi normale. == Exercice 3 On cherche à avoir une valeure la plus proche possible de la médianne des valeurs. On espère donc que statistiquement les erreurs des deux éléments se compensent. == Exercice 4 On peut trier la liste et prendre l'élément du milieu en $O(n log n)$. On peut tester chaque élément et compter le nombre d'éléments supérieurs et inférieurs en $O(n^2)$ == Exercice 5 La complexité est constante, car la taille est fixe. == Exercice 6 On fais ensuite le calcul de la médiane de ces médianes locales. == Exercice 7 Chaque élément supérieur a deux éléments supérieurs. Chaque élément inférieur a deux éléments inférieurs. On a donc $(3n)/(5 times 2)$ éléments supérieurs et $(3n)/(5 times 2)$ éléments inférieurs. Donc $"M5" = "M" plus.minus 15%$. == Exercice 8 - M5 : à partir d'un tableau de taille 5 (ou $<=5$), renvoie sa médiane (ou sa position, ou l'envoie en position 0) en $O(1)$ - M5m : à partir d'un tableau, renvoie le tableau des médianes des paquets de 5 (ou les expédie au début) en $O(n)$ - répartition : à partir d'un tableau et de deux indices (et de la position d'un pivot), envoie les éléments de part et d'autre du pivot qu'on placera en conséquence en $O(n)$ - médiane : à partir d'un tableau, renvoie la médiane : $c_n <= c_(n/5) + c_(7n/10) + theta(n) => c_n = theta(n)$