国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁(yè) PHP 庫(kù) 其它類庫(kù) 中獎(jiǎng)概率算法的php函數(shù)類
中獎(jiǎng)概率算法的php函數(shù)類
<?php
function get_rand($proArr) {
    $result = '';
    //概率數(shù)組的總概率精度
    $proSum = array_sum($proArr);
    //概率數(shù)組循環(huán)
    foreach ($proArr as $key => $proCur) {
        $randNum = mt_rand(1, $proSum);
        if ($randNum <= $proCur) {
            $result = $key;
            break;
        } else {
            $proSum -= $proCur;
        }
    }
    unset ($proArr);
    return $result;
}

獎(jiǎng)項(xiàng)數(shù)組是一個(gè)二維數(shù)組,記錄了所有本次抽獎(jiǎng)的獎(jiǎng)項(xiàng)信息,其中id表示中獎(jiǎng)等級(jí),prize表示獎(jiǎng)品,v表示中獎(jiǎng)概率。注意其中的v必須為整數(shù),你可以將對(duì)應(yīng)的 獎(jiǎng)項(xiàng)的v設(shè)置成0,即意味著該獎(jiǎng)項(xiàng)抽中的幾率是0,數(shù)組中v的總和(基數(shù)),基數(shù)越大越能體現(xiàn)概率的準(zhǔn)確性。本例中v的總和為100,那么平板電腦對(duì)應(yīng)的 中獎(jiǎng)概率就是1%,如果v的總和是10000,那中獎(jiǎng)概率就是萬(wàn)分之一了。$proArr是一個(gè)預(yù)先設(shè)置的數(shù)組,假設(shè)數(shù)組為:array(100,200,300,400),開(kāi)始是從1,1000 這個(gè)概率范圍內(nèi)篩選第一個(gè)數(shù)是否在他的出現(xiàn)概率范圍之內(nèi),如果不在,則將概率空間,也就是k的值減去剛剛的那個(gè)數(shù)字的概率空間,在本例當(dāng)中就是減去100,也就是說(shuō)第二個(gè)數(shù)是在1,900這個(gè)范圍內(nèi)篩選的。這樣 篩選到最終,總會(huì)有一個(gè)數(shù)滿足要求。就相當(dāng)于去一個(gè)箱子里摸東西,第一個(gè)不是,第二個(gè)不是,第三個(gè)還不是,那最后一個(gè)一定是。這個(gè)算法簡(jiǎn)單,而且效率非常 高,關(guān)鍵是這個(gè)算法已在我們以前的項(xiàng)目中有應(yīng)用,尤其是大數(shù)據(jù)量的項(xiàng)目中效率非常棒。


免責(zé)聲明

本站所有資源均由網(wǎng)友貢獻(xiàn)或各大下載網(wǎng)站轉(zhuǎn)載。請(qǐng)自行檢查軟件的完整性!本站所有資源僅供學(xué)習(xí)參考。請(qǐng)不要將它們用于商業(yè)目的。否則,一切后果由您負(fù)責(zé)!如有侵權(quán),請(qǐng)聯(lián)系我們刪除。聯(lián)系方式:admin@php.cn

相關(guān)文章

php如何實(shí)現(xiàn)計(jì)算抽獎(jiǎng)概率的算法實(shí)例分享 php如何實(shí)現(xiàn)計(jì)算抽獎(jiǎng)概率的算法實(shí)例分享

09 Aug 2017

這篇文章主要介紹了PHP編程實(shí)現(xiàn)計(jì)算抽獎(jiǎng)概率算法,結(jié)合完整實(shí)例形式分析了php隨機(jī)數(shù)運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下

在Go中實(shí)現(xiàn)功能以刪除從分類的切片中刪除重復(fù)元素。 (通過(guò)分類數(shù)據(jù)的效率和算法設(shè)計(jì)側(cè)重于效率和算法設(shè)計(jì)) 在Go中實(shí)現(xiàn)功能以刪除從分類的切片中刪除重復(fù)元素。 (通過(guò)分類數(shù)據(jù)的效率和算法設(shè)計(jì)側(cè)重于效率和算法設(shè)計(jì))

22 May 2025

本文討論了使用兩分球技術(shù)從排序切片中刪除重復(fù)項(xiàng)的有效GO功能,強(qiáng)調(diào)算法設(shè)計(jì)和性能。WordCount:159

如何使用自連接從自引用表中檢索數(shù)據(jù)? 如何使用自連接從自引用表中檢索數(shù)據(jù)?

13 Jan 2025

了解 SELF JOIN 及其應(yīng)用程序在數(shù)據(jù)庫(kù)管理領(lǐng)域中,SELF JOIN 是一種特殊類型的聯(lián)接操作,它允許...

在 Joomla 中連接第三方 PHP 庫(kù) 在 Joomla 中連接第三方 PHP 庫(kù)

28 Dec 2024

PHP 庫(kù)很方便,因?yàn)榭梢詮膽?yīng)用程序中的任何位置訪問(wèn)它們:從插件、組件模型、模塊等。如果有人已經(jīng)解決了類似的問(wèn)題并將其設(shè)計(jì)為庫(kù)(甚至更新了它),那就有意義了

Oracle 數(shù)據(jù)庫(kù)現(xiàn)在支持布爾數(shù)據(jù)類型嗎? Oracle 數(shù)據(jù)庫(kù)現(xiàn)在支持布爾數(shù)據(jù)類型嗎?

12 Jan 2025

Oracle 數(shù)據(jù)庫(kù)中布爾數(shù)據(jù)類型的可用性與其他 RDBMS(例如提供 BIT 數(shù)據(jù)類型的 Microsoft SQL Server)不同,Oracle 數(shù)據(jù)庫(kù)...

三個(gè)班級(jí)裝載機(jī)是什么? 三個(gè)班級(jí)裝載機(jī)是什么?

02 Jul 2025

Java中的三個(gè)主要類加載器是BootstrapClassLoader、ExtensionClassLoader和ApplicationClassLoader,它們構(gòu)成了雙親委派模型。1.BootstrapClassLoader是最頂層的類加載器,由C/C 實(shí)現(xiàn),負(fù)責(zé)加載Java核心類庫(kù)(如rt.jar),位于jre/lib目錄下,用戶無(wú)法直接訪問(wèn);2.ExtensionClassLoader是其子類加載器,負(fù)責(zé)加載jre/lib/ext路徑下的擴(kuò)展類庫(kù),可通過(guò)ClassLoader.getS

See all articles