public int[] shuitang(int n,int k,int [] num){
int[] res = new int[k];
int i,j;
Random random = new Random();
for(i=1; i <=k ; i++) res[i]=num[i];
for(i=k+1;i <= num.length; i++){
j = random.nextInt(i-1)+1;//random.nextInt(n)会产生0~n-1中任意一个数,所以j是1~n之间的任意一个数。如果j<=k,那么j就有k中选择,则模拟的概率就是k/n。
if(j <= k) res[j]=num[i];
}
return res;
}