Supposons que nous voulons trier une liste de n nombres réels. Supposons que l'on nous donne une boîte noire qui peut trier √ nombres réels instantanément. Quel avantage pouvons-nous gagner en utilisant cette boîte noire?
Par exemple, pouvons-nous trier les nombres avec seulement appels à la boîte noire? Le meilleur algorithme que j'ai trouvé utilisenappels à la boîte noire. Mais je n'ai pas pu l'améliorer davantage. Voici mon algorithme qui est similaire au tri par fusion:
Première partition de la liste en √ listess1,s2,. . . ,s √ avec environ√taille n . Utilisez ensuite √ appelle la boîte noire pour trier ces listes. Enfin, fusionnez les listes triées à l'aide de la boîte noire comme suit:
Mettez les plus petits éléments des listes dans une nouvelle liste , puis appelez la boîte noire pour la trier. Le nombre de L [ 1 ] (premier et plus petit élément de L ) sera le plus petit nombre dans S . Nous pouvons le mettre à la première place de la liste de sortie.
En supposant que l'élément a été choisi parmi les s j , on remplace L [ 1 ] avec le deuxième plus petit élément de la liste de tri de j , et d' exécuter à nouveau la boîte noire sur elle pour calculer le deuxième plus petit élément de S .
Nous continuons jusqu'à ce que tous les éléments soient triés. Le nombre total d'appels en boîte noire pour cette partie sera . Par conséquent, dans l'ensemble, le nombre total d'appels seran.
D'un autre côté, il semble que nous devrions pouvoir obtenir une borne inférieure en utilisant la borne inférieure sur les comparaisons de nombres nécessaires pour le tri comme suit: Nous pouvons implémenter la boîte noire en utilisant comparaisons. Si nous pouvons résoudre le problème aveco( √appels à la boîte noire et en fusionnant en temps linéaire on peut triernnombres réels avec descomparaisonso(nlgn)ce qui est impossible.
Je suppose que nous pourrions prouver que est une limite inférieure pour le nombre d'appels à la boîte noire, car de nombreuses comparaisons utilisant dans la boîte noire seraient partagées et sont donc racontées dans notre argument.
MISE À JOUR: Comme le suggèrent les autres articles, un est également réalisable.