Compte tenu d'une liste non formée de notes $ N $, combien de comparaisons aléatoires sont nécessaires en moyenne pour pouvoir trier la liste?
-
28-09-2020 - |
Question
Il y a une liste non formée de $ n $ articles $ x_1, \ ldots, x_n $ . Jusqu'à ce que vous puissiez trier la liste, vous recevez l'un des $ {n \ choisir 2} $ comparaisons binaires possibles uniformément au hasard (avec remplacement).
En moyenne, combien de ces comparaisons aléatoires devront-il pouvoir trier la liste?
Quelques questions de suivi:
- Que doit ressembler à la distribution du nombre de comparaisons?
- Quelle est la réponse si vous utilisez $ K $ -arisons au lieu de binaires.
- Quelle est la réponse si les comparaisons sont effectuées sans remplacement (c'est-à-dire que vous n'obtiendrez pas la même comparaison deux fois)?
- Compte tenu d'un ensemble de comparaisons, comment peut-on vérifier si la liste est capable? Je suis presque certain que la réponse est de construire un Dag et une sorte topologique, mais je veux juste confirmer.
Une réponse exacte-ish serait bien, mais une grosse classe $ o $ la réponse est bien aussi, je suppose.
La solution
Asympotiquement, vous aurez besoin $ \ theta (n ^ 2 \ journal n) $ comparaisons.
Supposons $ x _ {((1)}, \ points, x _ {(n)} $ désigne les éléments dans la commande triée. Ensuite, si vous ne voyez pas une comparaison entre $ x _ {((1)} $ et
Les questions suivantes bouchent sur des faits sur le problème du collecteur de coupon et vous pouvez utiliser les limites de la queue sur Wikipedia pour lier les informations sur la distribution.
Si les comparaisons sont choisies sans remplacement, alors vous avez besoin de $ \ theta (n ^ 2) $ observations.
Un moyen raisonnable de vérifier si la liste est trieuse consiste à effectuer un tri topologique, puis vérifiez que vous avez observé une comparaison entre chaque paire d'éléments adjacents dans l'ordre triés topologiquement.