第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將隨機(jī)范圍從1-5擴(kuò)展到1-7。

將隨機(jī)范圍從1-5擴(kuò)展到1-7。

將隨機(jī)范圍從1-5擴(kuò)展到1-7。給定一個在1到5范圍內(nèi)產(chǎn)生隨機(jī)整數(shù)的函數(shù),寫一個在1到7范圍內(nèi)產(chǎn)生隨機(jī)整數(shù)的函數(shù)。什么是簡單的解決方案?什么是減少內(nèi)存使用或在較慢的CPU上運行的有效解決方案?
查看完整描述

3 回答

?
慕勒3428872

TA貢獻(xiàn)1848條經(jīng)驗 獲得超6個贊

這相當(dāng)于AdamRosenfield的解決方案,但對一些讀者來說可能更清楚一些。它假定RANRAN 5()是一個函數(shù),它在1到5的范圍內(nèi)返回一個統(tǒng)計上的隨機(jī)整數(shù)。

int rand7()
{
    int vals[5][5] = {
        { 1, 2, 3, 4, 5 },
        { 6, 7, 1, 2, 3 },
        { 4, 5, 6, 7, 1 },
        { 2, 3, 4, 5, 6 },
        { 7, 0, 0, 0, 0 }
    };

    int result = 0;
    while (result == 0)
    {
        int i = rand5();
        int j = rand5();
        result = vals[i-1][j-1];
    }
    return result;
}

它怎麼工作?想想看:想象一下,在紙上打印出這個二維數(shù)組,把它貼在一個飛鏢板上,然后隨機(jī)地向它扔飛鏢。如果你碰到一個非零值,它是一個統(tǒng)計上的隨機(jī)值,介于1到7之間,因為有相同數(shù)量的非零值可供選擇。如果你擊中了一個零,繼續(xù)扔飛鏢直到你擊中一個非零。這就是這段代碼所做的:i和j索引隨機(jī)地在省道板上選擇一個位置,如果我們得不到好的結(jié)果,我們就繼續(xù)扔飛鏢。

就像亞當(dāng)說的,在最壞的情況下,這種情況可能會永遠(yuǎn)持續(xù)下去,但從統(tǒng)計學(xué)上說,最壞的情況*)


查看完整回答
反對 回復(fù) 2019-07-03
  • 3 回答
  • 0 關(guān)注
  • 829 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號