C#生成无重复的随机数

时间:2024-01-02 10:32:08

大一学期末的时候做课程设计时遇到过生成无重复随机数的问题,今天自己也写出来了:

static int[] Create_Value()
{
Random ran = new Random();
//生成0-51之间的无重复随机数,作为纸牌数组的索引
int[] a = new int[52];
for (int j = 0; j < 52; j++)
{
again:
int x = ran.Next(52);
a[j] = x;
for (int m = 0; m < j; m++)
{
if (a[j] == a[m])
{
goto again;//当遇到重复数字时重新生成
}
}
a[j] = x;
}
return a;
}