Partitionnement rapide est un algorithme permettant de partitionner un ensemble de données en deux sous-ensembles, de telle sorte que la somme des éléments d'un sous-ensemble soit aussi proche que possible de la somme des éléments de l'autre sous-ensemble.
Le partitionnement rapide est un algorithme glouton, ce qui signifie qu'il fait le meilleur choix à chaque étape sans tenir compte des conséquences futures. L'algorithme fonctionne en sélectionnant d'abord un élément aléatoire dans l'ensemble, puis en partitionnant l'ensemble en deux sous-ensembles, de telle sorte que la somme des éléments d'un sous-ensemble soit supérieure ou égale à la somme des éléments de l'autre sous-ensemble. L'algorithme applique ensuite ce processus de manière récursive à chaque sous-ensemble jusqu'à ce que le nombre de partitions souhaité soit atteint.
La complexité temporelle du partitionnement rapide est O(n log n), où n est le nombre d'éléments dans l'ensemble. En effet, l'algorithme divise récursivement l'ensemble en deux sous-ensembles et chaque appel récursif prend un temps O(n).
Le partitionnement rapide est un algorithme largement utilisé pour partitionner les données, et il est souvent utilisé conjointement avec d'autres algorithmes tels que le tri et la recherche.
|