<?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
![Bagaimanakah Saya Boleh Mendayakan Fungsi Swap untuk Kelas Saya dalam Algoritma STL?](https://img.php.cn/upload/article/001/246/273/173296423634865.jpg)
30 Nov 2024
Fungsi Swap untuk Algoritma STLUntuk mendayakan fungsi swap untuk kelas anda dalam algoritma STL, anda mempunyai beberapa pilihan:Tukar AhliTulis ahli...
![Bagaimana untuk Memanggil Fungsi Kelas Kanak-Kanak daripada Kelas Induk dalam PHP?](https://img.php.cn/upload/article/001/246/273/172929771178585.jpg)
19 Oct 2024
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() { //
![Bagaimana untuk Mendapat Fungsi Kelas Kanak-kanak daripada Kelas Induk Menggunakan Kelas Abstrak dalam PHP?](https://img.php.cn/upload/article/001/246/273/172929762282880.jpg)
19 Oct 2024
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
![Bagaimana untuk Memanggil Fungsi Kelas Kanak-kanak daripada Kelas Induk dalam PHP Menggunakan Kelas Abstrak?](https://img.php.cn/upload/article/001/246/273/172929750330069.jpg)
19 Oct 2024
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 { ...
![Bagaimana untuk Memanggil Fungsi dari Kelas Kanak-Kanak Dalam Kelas Induk dalam PHP?](https://img.php.cn/upload/article/001/246/273/172929765053200.jpg)
19 Oct 2024
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
![Bagaimana untuk Mencipta Perpustakaan Statik daripada Berbilang Perpustakaan Statik Lain?](https://img.php.cn/upload/article/001/246/273/173437232459446.jpg)
17 Dec 2024
Mencipta Perpustakaan Statik yang Berpaut ke Perpustakaan Statik Lain Apabila membina perpustakaan statik yang bergantung pada kebergantungan daripada berbilang yang lain...
![](/static/imghw/down_right.png)
![](/static/imghw/taglogo.png)
Hot Tools
![Pustaka PHP untuk bekas suntikan kebergantungan](https://img.php.cn/upload/manual/000/000/001/5e2171bf3c005481.png)
Pustaka PHP untuk bekas suntikan kebergantungan
Pustaka PHP untuk bekas suntikan kebergantungan
![Koleksi 50 algoritma PHP klasik yang sangat baik](/static/imghw/default1.png)
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](/static/imghw/default1.png)
Pustaka PHP kecil untuk mengoptimumkan imej
Pustaka PHP kecil untuk mengoptimumkan imej
![](/static/imghw/taglogo.png)