You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
1.5 KiB
78 lines
1.5 KiB
package com.never.basic;
|
|
|
|
import java.util.PriorityQueue;
|
|
|
|
/**
|
|
* @Description: TODO
|
|
* @author: Bo Li
|
|
* @date: 2022年08月29日 9:13
|
|
*/
|
|
public class zeroOneGenerate {
|
|
public static void main(String[] args) {
|
|
int[] arr = {0,0};
|
|
for(int i = 0; i < 100000; i++){
|
|
arr[g()] +=1;
|
|
}
|
|
|
|
for(int i = 0; i < arr.length; i++){
|
|
System.out.println(arr[i]);
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* @Description: 实现1-7等概率生成器
|
|
*/
|
|
public static int f3(){
|
|
int res = 0 ;
|
|
do{
|
|
res = (g()<<2) + (g()<<1)+(g()<<0);
|
|
}while(res >6);
|
|
return res+1;
|
|
}
|
|
/**
|
|
* @Description: 实现0-7等概率生成器
|
|
*/
|
|
public static int f2(){
|
|
return (g()<<2) + (g()<<1)+(g()<<0);
|
|
}
|
|
/**
|
|
* @Description: 实现0、1生成器
|
|
*/
|
|
public static int g(){
|
|
int res =0;
|
|
do{
|
|
res = f1();
|
|
}while(res == 3);
|
|
|
|
return res == 2 || res ==1? 0:1;
|
|
}
|
|
|
|
/**
|
|
* @Description: 模拟外界不可见的1-5等概率随机函数
|
|
*/
|
|
public static int f1(){
|
|
return (int)(Math.random()*5)+1;
|
|
}
|
|
|
|
|
|
/**
|
|
* @Description: 通过fr1(),实现01等概率
|
|
*/
|
|
public static int g2(){
|
|
int ans = 0;
|
|
do{
|
|
ans = fr1();
|
|
}while (ans == fr1());
|
|
return ans;
|
|
}
|
|
/**
|
|
* @Description: 模拟外界不可见的0-1不等概率随机函数
|
|
*/
|
|
public static int fr1(){
|
|
return Math.random()<0.7?0:1;
|
|
}
|
|
|
|
|
|
}
|