How do you shuffle a non-standard deck of cards?
<p>I am making a program to play a game of UNO. In the UNO deck, some cards are repeated, and therefore I cannot just make a list of integers; I have to use objects. I plan on using a LinkedList for the deck, but I am aware that shuffles on a LinkedList are horridly slow. </p>

<p>My question is, should I....</p>

<ol>
<li>Avoid a LinkedList entirely and just go with an ArrayList</li>
<li>Use an ArrayList or similar, shuffle, then put the contents into the LinkedList</li>
<li>Construct an ArrayList, then make my own shuffling routine (aka not using Random) that adds to the LinkedList as we go</li>
<li>Shuffle the LinkedList anyway (as in, it's not really that bad)</li>
</ol>

<p>This is not for homework; it is to assist in having fun :)</p>
