[vox-tech] shuffling arrays in C?
Alexandra Thorn
vox-tech@lists.lugod.org
Mon, 25 Nov 2002 15:56:58 -0800 (PST)
> const int selection_size = ELEMS_IN_ARY(your_array) - (i + 1);
> int selected_card = (i + 1) /* don't include the already selected
> cards, or the card to swap with */
> + (int)((selection_size*1.0*rand())/(RAND_MAX+1.0)) /* see
> rand(3) */
Micah, could you explain how/why this would work? It doesn't seem
intuitively obvious, and I prefer not to use code that I don't understand.
Thanks,
Alex