You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Alex D Herbert (JIRA)" <ji...@apache.org> on 2018/11/16 10:50:00 UTC
[jira] [Created] (RNG-62) CombinationSampler
Alex D Herbert created RNG-62:
---------------------------------
Summary: CombinationSampler
Key: RNG-62
URL: https://issues.apache.org/jira/browse/RNG-62
Project: Commons RNG
Issue Type: New Feature
Reporter: Alex D Herbert
The sampling module contains a PermutationSampler. There is scope to create a CombinationSampler too.
[https://en.wikipedia.org/wiki/Permutation]
[https://en.wikipedia.org/wiki/Combination]
If the order of the returned sample is not important then a combination can be generated faster than a permutation.
The sample can be optimised by only performing the first k or (n-k) steps from a full Fisher-Yates shuffle from the end of the domain to the start. The upper positions will then contain a random permutation sample from the domain. The lower half is then by definition also a random sample (just not in a random order). The sample is then picked using the upper or lower half depending which makes the number of steps smaller.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)