您的位置:首页 > 其它

【转】从一副扑克牌中随机抽取N张

2017-02-27 15:27 99 查看
该问题为产生不重复的随机数序列,形象点就是一副扑克牌中随机抽取N张。

摘自:不重复随机数列生成算法

改了一部分

/**
* 从0-max随机选N个数出来
* **/
public static int[] GetRandomSequence2(int max,int N)
{

int[] sequence = new int[max];
int[] output = new int
;

for (int i = 0; i < max; i++)
{
sequence[i] = i;
}

Random random = new Random();

int end = max-1;

for (int i = 0; i < N; i++)
{
int num = random.nextInt(end);
output[i] = sequence[num];
sequence[num] = sequence[end];
end--;
}

return output;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: