Dans l'article précédent "Algorithme PHP Random Picking One (2) ", nous avons présenté en détail l'idée d'implémentation de l'algorithme PHP Random Picking One, qui est la "Sélection équitable de Monkey King" solution aux questions d'entretien.
Ci-dessous, nous combinerons les méthodes de code dans les articles ci-dessus pour vous montrer le processus de débogage et d'exécution de l'algorithme via Xdebug.
Le problème est le suivant :
Un groupe de singes s'alignent en cercle et sont numérotés selon 1, 2,..., n. Ensuite, commencez à compter à partir du 1er, comptez jusqu'au mème, expulsez-le du cercle, commencez à compter par derrière, comptez jusqu'au mème, expulsez-le..., et continuez ainsi jusqu'à la fin. il ne reste plus qu'un singe, ce singe s'appelle le roi. Une programmation est nécessaire pour simuler ce processus, saisir m, n et afficher le numéro du dernier roi.
Le code est le suivant?:
<?php function king($n, $m){ $monkeys = range(1, $n); //創(chuàng)建1到n數(shù)組 $i=0; while (count($monkeys)>1) { //循環(huán)條件為猴子數(shù)量大于1 if(($i+1)%$m==0) { //$i為數(shù)組下標(biāo);$i+1為猴子標(biāo)號 unset($monkeys[$i]); //余數(shù)等于0表示正好第m個,刪除,用unset刪除保持下標(biāo)關(guān)系 } else { array_push($monkeys,$monkeys[$i]); //如果余數(shù)不等于0,則把數(shù)組下標(biāo)為$i的放最后,形成一個圓形結(jié)構(gòu) unset($monkeys[$i]); } $i++;//$i 循環(huán)+1,不斷把猴子刪除,或 push到數(shù)組 } return current($monkeys); //猴子數(shù)量等于1時(shí)輸出猴子標(biāo)號,得出猴王 } echo king(10,3);
Nous créons d'abord un point d'arrêt avant la quatrième ligne de code.
Ensuite, ouvrez le navigateur et exécutez ce code. Le point d'arrêt obtient avec succès le focus, comme indiqué ci-dessous.
Créez un tableau de 1 à n.
Ensuite, la boucle while détermine l'élément à supprimer.
Ce cycle mène au "Roi Singe".
Recommandations associées?: "Comment configurer et utiliser l'outil xdebug dans PHPStorm?? (Tutoriel photo + vidéo) 》
Il s'agit donc de l'algorithme de sélection aléatoire de PHP. Vous pouvez également le tester localement. C'est en fait très simple, j'espère que cela sera utile aux amis qui en ont besoin?!
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)