如何生成给定数值数组中不存在的数值?

我有这种方法来生成新的数值,但它需要很长时间才能完成该功能。 如何快速生成随机数?如何生成给定数值数组中不存在的数值?

public int GeneratenewID(int[] OptionId) 

{

Random ran = new Random();

int SearchId = ran.Next(1, OptionId.Length*2);

if (!OptionId.Contains(SearchId))

{

return SearchId;

}

else

{

return GeneratenewID(OptionId);

}

}

回答:

这将肯定如此尝试的工作:

using System; 

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace ConsoleApplication4

{

class Program

{

static void Main(string[] args)

{

int [] OptionId=new int[]

{

0, 1,4,7,3,1,37,9

};

Program p = new Program();

int a= p. GeneratenewID(OptionId);

}

public int GeneratenewID(int[] OptionId)

{

Random ran = new Random(1);

int number = 0;

for (int j = 0; j < OptionId.Length ; j++)

{

number = ran.Next(OptionId.Length);

if (!OptionId.Contains(number))

break;

else

j--;

}

return number;

}

}

}

以上是 如何生成给定数值数组中不存在的数值? 的全部内容, 来源链接: utcz.com/qa/262902.html

回到顶部