首页 > 代码库 > Random 产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。
Random 产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。
做法1:
List<int> list = new List<int>();
Random rand = new Random();
while (list.Count < 100)
{
int number = rand.Next(1, 101);//>=1,<101
if (!list.Contains(number))//如果list中已经含有这个数,则不插入
{
list.Add(number);
}
}
foreach (int i in list)
{
Console.WriteLine(i);
}
做法2:
先把1-100这100个数按顺序放入数组arr,再重复100次下面的操作,生成两个介于 >=0,<100 之间的随机数m、n,颠倒arr[m]和arr[n]的数。
int[] arr = new int[100];
//把100个数顺序放入
for (int i = 0; i < 100; i++)
{
arr[i] = i + 1;
}
Random rand = new Random();
for (int i = 0; i < 100; i++)
{
//随机生成两个位置
int m = rand.Next(0, 100);
int n = rand.Next(0, 100);
//颠倒两个位置
int temp = arr[m];
arr[m] = arr[n];
arr[n] = temp;
}