<?php function get_rand($proArr) { $result = ''; //概率数组的总概率精度 $proSum = array_sum($proArr); //概率数组循环 foreach ($proArr as $key => $proCur) { $randNum = mt_rand(1, $proSum); if ($randNum <= $proCur) { $result = $key; break; } else { $proSum -= $proCur; } } unset ($proArr); return $result; }
Tatasusunan hadiah ialah tatasusunan dua dimensi yang merekodkan semua maklumat hadiah loteri ini, di mana id mewakili tahap kemenangan, hadiah mewakili hadiah, dan v mewakili kebarangkalian untuk menang. Perhatikan bahawa v mestilah integer Anda boleh menetapkan v anugerah yang sepadan kepada 0, yang bermaksud bahawa kebarangkalian untuk memenangi anugerah ialah 0. Jumlah v dalam tatasusunan (asas). tepat kebarangkalian boleh dicerminkan. Dalam contoh ini, jumlah v ialah 100, maka kebarangkalian menang untuk tablet itu ialah 1%. $proArr ialah tatasusunan yang telah ditetapkan. Andaikan tatasusunan itu ialah: tatasusunan(100,200,300,400) Ia bermula dengan menyaring nombor pertama daripada julat kebarangkalian 1,1000 untuk melihat sama ada ia berada dalam julat kebarangkalian kejadiannya ruang kebarangkalian ialah ruang kebarangkalian bagi nilai k tolak nombor tadi Dalam kes ini, ia adalah tolak 100, yang bermaksud nombor kedua ditapis dalam julat 1,900. Dengan cara ini, sehingga akhir saringan, akan sentiasa ada nombor yang memenuhi keperluan. Ia seperti menyentuh sesuatu dalam kotak Jika yang pertama tidak ada, yang kedua tidak ada, dan yang ketiga tidak ada, maka yang terakhir mesti ada. Algoritma ini mudah dan sangat cekap Kuncinya ialah algoritma ini telah digunakan dalam projek kami sebelum ini, terutamanya dalam projek dengan jumlah data yang besar.
Semua sumber di laman web ini disumbangkan oleh netizen atau dicetak semula oleh tapak muat turun utama. Sila semak integriti perisian itu sendiri! Semua sumber di laman web ini adalah untuk rujukan pembelajaran sahaja. Tolong jangan gunakannya untuk tujuan komersial. Jika tidak, anda akan bertanggungjawab untuk semua akibat! Jika terdapat sebarang pelanggaran, sila hubungi kami untuk memadamkannya. Maklumat hubungan: admin@php.cn
Artikel Berkaitan

30Nov2024
Fungsi Swap untuk Algoritma STLUntuk mendayakan fungsi swap untuk kelas anda dalam algoritma STL, anda mempunyai beberapa pilihan:Tukar AhliTulis ahli...

19Oct2024
Cara Memanggil Fungsi Kelas Kanak-Kanak daripada Kelas Induk dalam PHPDalam PHP, tugas biasa adalah menggunakan fungsi yang ditakrifkan dalam kelas anak dari dalam kelas induk. Pertimbangkan contoh berikut: kelas paus { fungsi awam __construct() { //

19Oct2024
Menggunakan Kelas Abstrak untuk Mendapat Fungsi Kelas Kanak-kanak daripada Kelas Induk dalam PHPDalam bidang pengaturcaraan berorientasikan objek, sering timbul keperluan untuk mengakses fungsi yang ditakrifkan dalam kelas anak dari dalam kelas induk. Mari kita periksa bagaimana th

19Oct2024
Memanggil Fungsi Kelas Kanak-kanak daripada Kelas IndukDalam PHP, adalah mungkin untuk memanggil fungsi daripada kelas anak dalam kelas induk, tetapi ia memerlukan perancangan yang teliti. Pertimbangkan contoh kod berikut:class whale { ... } ikan kelas memanjang ikan paus { ...

19Oct2024
Cara Mendapat Fungsi Kelas Kanak-kanak daripada Kelas Induk dalam PHPQuestion: Pertimbangkan kod berikut untuk menggambarkan cabaran: paus kelas { fungsi __construct() { // beberapa kod di sini } fungsi myfunc() { // Bagaimana saya memanggil "te

25Nov2024
Kepekaan Kes PHP: Membongkar LogicIn PHP, nama pembolehubah dan pemalar adalah sensitif huruf besar, manakala nama fungsi dan kelas tidak. ini...


Hot Tools

Pustaka PHP untuk bekas suntikan kebergantungan
Pustaka PHP untuk bekas suntikan kebergantungan

Koleksi 50 algoritma PHP klasik yang sangat baik
Algoritma PHP klasik, pelajari idea yang sangat baik dan kembangkan pemikiran anda

Pustaka PHP kecil untuk mengoptimumkan imej
Pustaka PHP kecil untuk mengoptimumkan imej
