返回信息流源代码:
package javacore;
import java.util.*;
public class random {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.println("Please input your numbers:");
int n = in.nextInt();
System.out.println("Please input your k:");
int k = in.nextInt();
int[] numbers = new int[n];
for(int i = 0;i < numbers.length;i++)
{
numbers[i] = i + 1;
}
int[] result = new int[k];
for(int i = 0;i < result.length;i++)
{
int r = (int)(Math.random()*n);
result[i] = numbers[r];
numbers[r] = numbers[n-1];
n--;
}
for(int r:result)
{
System.out.println(r);
}
}
}
看不懂 拿最后一个元素代替那个随机元素的问题
怎么就能确保下次不抽取重复
for(int i = 0;i < result.length;i++)
{
int r = (int)(Math.random()*n);
result[i] = numbers[r];
numbers[r] = numbers[n-1];
n--;
}
求大牛解答~拜谢[em1]
这是一条镜像帖。来源:北邮人论坛 / java / #21607同步于 2012/3/3
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
求大牛指点。 java 彩票问题
xuylala
2012/3/3镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。