/**
* 随机数排序
* */
private void paiXun(int [] i){
List<String> list=new ArrayList<String>();
for(int t=0;t<i.length;t++){
//让相邻的元素进行比较 逆序交换位置
for(int t1=0;t1<i.length-1-t;t1++){
//判断是否逆序
if(i[t1]>i[t1+1]){
//位置交换
int temp=i[t1];
i[t1]=i[t1+1];
i[t1+1]=temp;
}
}
}
for(int j=0;j<i.length;j++){
list.add(i[j]+"");
Log.e("随机数", list.get(j));
}
tv.setText(list.toString());
}
/**
* 随机指定范围内N个不重复的数
* @param min 指定范围最小值
* @param max 指定范围最大值
* @param n 随机数个数
*/
public static int[] randomCommon(int min, int max, int n){
if (n > (max - min + 1) || max < min) {
return null;
}
int[] arr = new int[n];
int count = 0;
while(count < n) {
int num = (int) (Math.random() * (max - min)) + min;
boolean flag = true;
for (int j = 0; j < n; j++) {
if(num == arr[j]){
flag = false;
break;
}
}
if(flag){
arr[count] = num;
count++;
}
}
return arr;
}
从指定范围获取指定个数的正序排列的不重复随机数
最新推荐文章于 2021-06-07 13:15:21 发布