What would be an algorithm for generating permutations of Omaha hands? For instance the following has a file that contains each of the 16,432 possible Omaha hands, and how many total permutations each hand has:
http://www.reviewpokerrooms.com/poke...hand-data.html
The way that the site labels the hands is "2C 3C 4C 5C", "AC KC AD KD", "JC TC 9D 9H", "2C 3D 4H 5S", etc. The first hand has 4 total permutations, the second 6, the third 12, and the last 24 (where for two cards of the same rank, order does not matter - so KsKd is the same as KdKs). The possible permutations for each of these hands are listed on that page.
I myself would have the input for the algorithm be something like the following:
Code:
2-1 3-1 4-1 5-1
K-1 A-1 K-2 A-2
T-1 J-1 9-2 9-3
2-1 3-2 4-3 5-4
Where the number after the dash just indicates how many different suits there are in the hand, and which suit is for which rank (from the reviewpokerrooms data, this would just be a translation of C->1, D->2, H->3, S->4).
I'm unsure of the algorithm to then convert these labels, into all the different permutations - where each possible permutation is listed, and none are repeated. I'm guessing this would involve having a deck of cards where you pop a card after use, but I don't know what the steps of the algorithm would be.
Does anyone know how to convert these types of labels into a list of distinct permutations?