給一個函數,返回 0 和 1,概率為 p 和 1-p,請你實現一個函數,使得返回 01 概率一樣


自己寫的,不清楚對不對,僅供參考,應該還可以優化,有更好的辦法,希望大家留言,謝謝

思路:

第一次返回0,第二次返回1的概率是p*(1-p)
第一次返回1,第二次返回0的概率是(1-p)*p 
00概率是p平方;11概率是(1-p)平方 ,這兩種情況導致概率偏差舍棄.

代碼如下:

給定的函數方法:index>n; 概率根據n的數字確定;

//假設給定的函數
     public static int generateZeroAndOne() {
            int index=new Random().nextInt(10);
            if(index>3) {
                return 0;
            }
                return 1;
        }

下面是調整概率的代碼:

public static int rate() {
      
int b1=generateZeroAndOne(); int b2=generateZeroAndOne(); if (b1==0&&b2==1) { return 0; } else if(b1==1&&b2==0) { return 1; } return rate(); }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM