【发布时间】:2013-07-12 11:55:21
【问题描述】:
我正在尝试编写一个用唯一数字填充数组的代码。
我可以分别为 1、2 和 3 维数组编写代码,但 for 循环数会增长到“无穷大”。
这是二维数组的代码:
static void fillArray(int[,] array)
{
Random rand = new Random();
for (int i = 0; i < array.GetLength(0); i++)
{
for (int j = 0; j < array.GetLength(1); j++)
{
array[i, j] = rand.Next(1, 100);
for (int k = 0; k < j; k++)
if (array[i, k] == array[i, j])
j--;
}
}
print_info(array);
}
是否可以对 n 维数组执行类似操作?
【问题讨论】:
-
您的代码仅检查该数字在数组的同一切片中是否唯一。这是意图,还是该数字在整个数组中应该是唯一的?
-
UPS。我从来没有注意到这一点。你说的对。它在整个数组中应该是唯一的。
标签: c# arrays random unique multidimensional-array