I'll try to be more clear.
Assign a death counter to each suit: Hearts=Cantina, Spades=Cave, Diamonds=Cave-in, Clubs=Jump Gate
For each of these death counters, there will be a bit assigned to each number
1111111111111
KQJ098765432A
10 is 0, of course, for clarification.
Now, if the card exists in the deck, there will be a 1 there. If it does not exist, there will be a 0 there. Of course, Starcraft can't handle such a 13 digit number in decimal, so you need to change it from binary into decimal, or 2^13, which is 8192, or 8191 counting 0. This means that the following cards have the following decimal numbers associated with them:
K 4096
Q 2048
J 1024
0 512
9 256
8 128
7 64
6 32
5 16
4 8
3 4
2 2
A 1
Now, for a description of how the triggers would work. First you draw a card, and the triggers would randomly decide on one of the four suits (just 2 switches). From there, it decides on a card to be drawn (needs 13, so 4 switches, ignore the last 3 possibilities, since 2^4 is 16 and you only need 13). Now, it checks to see if that card is available by subtracting out the REST of the numbers in the death counter.
Say, you choose a king. That means you will subtract out QJ0987654321, or 4095 from the death counter. If you have 4096 left over, the king is available to draw, so you draw it. When subtracting, you have to take into account the cards which had been previously drawn, and don't subtract them from the death counter. Now permanently subtract the 4096, and add in the 4095 you just took out.
After the king has been drawn, say you now want to draw again, and this time you get a 6 out of the same suit. You have to subtract out KQJ098754321, or 8159. Since you already have drew the king, you'll have to add in 4096, or just not subtract it when you normally would by setting some form of death counter (saying I've already drawn king, don't bother with it). That means you'll actually be subtracting 4063 from the death counter. Now you should have 32 leftover, and you draw the 6. Subtract out the 32, and mark it saying you have now drawn the 6. Next, add back in the remaining 4063.
You can keep doing this, and if you get a card that has already been drawn, just start over again. This means that by the end of the deck, you'll be waiting around for the card to be drawn, but it's done entirely through triggers, and as there is no way to randomize a list in starcraft, I think this might be the best way to do it without actually using units in the map.
If you want to do it easier, and actually have the equivalent of a deck of cards, you can use a set of units, and randomize them in any way you choose in the above method or the way other people were saying (junkyard dog comes to mind, also a flying unit moving over a group of units).