题目:产生n个的1到n的不重复随机数。
解题思路:遍历改数组,将当前位置的数与随机位置的数交换。
c#描述如下:
解题思路:遍历改数组,将当前位置的数与随机位置的数交换。
c#描述如下:
int[] data = new int[100000000];
Random r = new Random();
for (int i = 1; i <= data.Length; ++i)
{
data[i-1] = i;
}
for (int i = 0; i < data.Length; ++i)
{
int rNum = r.Next(data.Length);
int temp = data[i];
data[i] = data[rNum];
data[rNum] = temp;
}
本文介绍了一种生成从1到n的不重复随机数的方法,通过遍历数组并使用随机函数进行元素交换来实现,这种方法可以确保每个数字仅出现一次且随机分布。
1267

被折叠的 条评论
为什么被折叠?



