Lexicographic unranking of combinations revisited - Sorbonne Université Accéder directement au contenu
Article Dans Une Revue Algorithms Année : 2021

Lexicographic unranking of combinations revisited

Résumé

In the context of combinatorial sampling, the so-called “unranking method” can be seen as a link between a total order over the objects and an effective way to construct an object of given rank. The most classical order used in this context is the lexicographic order, which corresponds to the familiar word ordering in the dictionary. In this article, we propose a comparative study of four algorithms dedicated to the lexicographic unranking of combinations, including three algorithms that were introduced decades ago. We start the paper with the introduction of our new algorithm using a new strategy of computations based on the classical factorial numeral system (or factoradics). Then, we present, in a high level, the three other algorithms. For each case we analyze its time complexity on average, within a uniform framework, and describe its strengths and weaknesses. For about 20 years, such algorithms have been implemented using big integer arithmetic rather than bounded integer arithmetic which makes the cost of computing some coefficients higher than previously stated. We propose improvements for all implementations which take this fact into account and we give a detailed complexity analysis which is validated by an experimental analysis. Finally we show that even if the algorithms are based on different strategies, all are doing very similar computations. Lastly, we extend our approach to the unranking of other classical combinatorial objects like families counted by multinomial coefficients and k-permutations.
Fichier principal
Vignette du fichier
preprint.pdf (741.44 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03040740 , version 1 (04-12-2020)
hal-03040740 , version 2 (22-02-2021)

Identifiants

Citer

Antoine Genitrini, Martin Pépin. Lexicographic unranking of combinations revisited. Algorithms, 2021, 14 (3), pp.97. ⟨10.3390/a14030097⟩. ⟨hal-03040740v2⟩
259 Consultations
466 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More