Does boost offer a random permutation function?
I am looking for a function that randomly selects a permutation of a sequence. For instance given "1,2,3", it would produce something like "2,1,3" randomly selected from all possible permutations. I could code this myself by creating a container with all possible permutations and randomly selecting one, but this isn't reasonably if the size of the sequence gets larger. I've looked on the web and found an old 4 line FORTRAN subroutine that appears to do this. If boost don't already have this, I will attempt to convert this to C++.
On 08/07/07, Jeffrey Holle
I am looking for a function that randomly selects a permutation of a sequence. For instance given "1,2,3", it would produce something like "2,1,3" randomly selected from all possible permutations.
Would std::random_shuffle do the job? http://www.roguewave.com/support/docs/sourcepro/edition9-update1/html/stdlib...
Thanks for this! After testing the 3 parameter variant of random_shuffle, with the appropriate seed, I see that it do the job. Scott McMurray wrote:
On 08/07/07, Jeffrey Holle
wrote: I am looking for a function that randomly selects a permutation of a sequence. For instance given "1,2,3", it would produce something like "2,1,3" randomly selected from all possible permutations.
Would std::random_shuffle do the job?
http://www.roguewave.com/support/docs/sourcepro/edition9-update1/html/stdlib...
participants (2)
-
Jeffrey Holle
-
Scott McMurray