Maison > développement back-end > tutoriel php > Comment puis-je générer des valeurs aléatoires pondérées en PHP ?

Comment puis-je générer des valeurs aléatoires pondérées en PHP ?

Susan Sarandon
Libérer: 2024-12-17 21:52:12
original
521 Les gens l'ont consulté

How Can I Generate Weighted Random Values in PHP?

Création de valeurs aléatoires pondérées en PHP

Lors de la génération de valeurs aléatoires, il peut être souhaitable d'attribuer des probabilités variables à différents résultats, créant ainsi une valeur pondérée. distribution. PHP fournit une solution pour y parvenir grâce à sa fonction getRandomWeightedElement(). Cette fonction utilise des tableaux associatifs pour définir les chances relatives de sélectionner des valeurs spécifiques.

Par exemple, pour générer un nombre aléatoire entre 1 et 10 avec une probabilité plus élevée de 3, 4 et 5, on peut utiliser ce qui suit Tableau WeightedValues :

['1' => 1, '2' => 1, '3' => 5, '4' => 5, '5' => 5, '6' => 1, '7' => 1, '8' => 1, '9' => 1, '10' => 1]
Copier après la connexion

Dans ce tableau, les valeurs représentent les probabilités relatives de chaque nombre sélectionné. Puisque 3, 4 et 5 ont une probabilité de 5, ils apparaîtront collectivement plus fréquemment.

Pour utiliser la fonction getRandomWeightedElement(), transmettez-lui simplement le tableau pondéréValues ​​comme argument :

$randomNumber = getRandomWeightedElement($weightedValues);
Copier après la connexion

Le résultat est un nombre choisi aléatoirement entre 1 et 10, pondéré selon les probabilités définies dans les $weightedValues tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal