我想创建多维数组with Random r = new Random();
每个元素都应该随机生成,它们都必须是不同的元素。它们都不应该相同。我也不能使用任何功能。
这是数组但有相同的元素。 我希望所有元素都不同。
for (int i=0; i<3; i++)
{
for(int j=0; j<4; j++)
{
arr[i, j] = rand.Next(1,25);
}
}
答案 0 :(得分:1)
在懒惰版本中,可以将1D混洗数组复制到2D数组:
Random rand = new Random();
int[] shuffled = Enumerable.Range(1, 25).OrderBy(rand.Next).ToArray();
int[,] arr = new int[3, 4];
Buffer.BlockCopy(shuffled, 0, arr, 0, arr.Length * sizeof(int));