Limite inférieure pour trouver le kème plus petit élément à l'aide d'arguments adverses


10

Dans de nombreux textes, une borne inférieure pour trouver le ème plus petit élément est dérivée en utilisant des arguments utilisant des médianes. Comment puis-je en trouver un en utilisant un argument adversaire?k

Wikipedia dit que l'algorithme du tournoi s'exécute en , et est donné comme borne inférieure.O(n+klogn)nk+j=n+2knlgj

Réponses:


8

Je vais brièvement esquisser un croquis d'un argument de l'adversaire.

Considérez votre algorithme de sélection jouer contre un adversaire que nous appellerons l'adversaire.Le but de l'adversaire est de fournir une entrée pour votre algorithme qui maximise le nombre d'opérations de comparaison effectuées par votre algorithme. En effet, votre algorithme peut être vu comme un arbre de comparaison, dans lequel un chemin correspond à un ordre partiel. Lorsque l'algorithme interroge l'adversaire sur une paire d'éléments, l'adversaire renvoie soit ou . Les réponses de l'adversaire ne peuvent jamais contredire les résultats précédents.X(x,y)x<yy<x

Supposons que le ème élément le plus grand soit : compte tenu de l'ordre partiel associé à n'importe quelle feuille de l'arbre de comparaison, alors doit être comparable à tous les autres éléments pour que l'algorithme soit correct, de sorte que l'algorithme doit avoir fait au moins une comparaison dont le résultat est soitkxx(y,z) yxy<zx ou xz<y . Appelons une telle comparaison cruciale pour un élément y . De toute évidence, l'adversaire souhaite maximiser le nombre de comparaisons non cruciales effectuées par votre algorithme.

Soit L l'ensemble des k1 éléments les plus grands; votre algorithme doit identifier correctement tous les éléments de L ainsi que le plus grand élément de XL , c'est-à-dire x . Observez que chaque élément de XL a perdu au moins une comparaison cruciale. Maintenant, l'adversaire a une stratégie qui oblige chacun des k1 éléments de L à gagner au moins lgnk1comparatif, aucun dequi est crucial pourXL. En additionnant lesnkcomparaisons crucialesrestantespourXLvous obtenez la borne inférieure. Pour plus de détails, veuillez lire les excellentesnotessuivantes de Jeff Erikson.


crucial comparison for $y$y:zy<zxxz<yxzx
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.