Dans l'article précédent, nous vous avons présenté la série d'algorithmes PHP "PHP choisit au hasard un algorithme》. Aujourd'hui, nous continuerons à vous expliquer les points de connaissance pertinents de la série d'algorithmes PHP courants, à savoir Algorithme de tri à bulles PHP .
Le tri des bulles, je crois, n'est pas étranger aux programmeurs. Pour faire simple, l'algorithme de tri à bulles compare deux nombres adjacents en séquence, puis les trie en fonction de leur taille jusqu'aux deux derniers chiffres.
La raison pour laquelle on l'appelle « algorithme de tri à bulles » est que les éléments plus gros « flotteront » lentement vers le haut du tableau par échange (disposés par ordre croissant ou décroissant), tout comme les bulles de carbone. dioxyde de carbone dans les boissons gazeuses. Il finira par flotter à la surface.
Nous allons maintenant vous présenter l'implémentation de l'algorithme de tri à bulles PHP basé sur des exemples de code spécifiques. (Ce qui suit est l'ordre croissant, c'est-à-dire de petit à grand)
L'exemple de code est le suivant :
<?php function maopao($arr){ $len = count($arr); for($k=0;$k<=$len;$k++) { for($j=$len-1;$j>$k;$j--){ if($arr[$j]<$arr[$j-1]){ $temp = $arr[$j]; $arr[$j] = $arr[$j-1]; $arr[$j-1] = $temp; } } } return $arr; } $arr = [2,6,2,8,2,34,5,9,2341,23]; var_dump(maopao($arr));
Ici, nous définissons une méthode maopao , nous passons d'abord la fonction count Compter la longueur totale du tableau spécifié. Utilisez ensuite une double instruction de boucle for pour parcourir les éléments du tableau et les comparer un par un. Ensuite, la boucle for externe est utilisée pour contrôler les tours de boucle ; la boucle for interne doit contrôler le nombre de comparaisons dans chaque tour et sélectionner. la plus grande après chaque tour de comparaison. La valeur est placée en dernier.
Remarque : Ici, nous stockons la valeur de $j via la variable temporaire $temp medium, de manière à comparer deux éléments adjacents dans une boucle et à mettre la plus grande valeur à la fin.
Sortie :
array (size=10) 0 => int 2 1 => int 2 2 => int 2 3 => int 5 4 => int 6 5 => int 8 6 => int 9 7 => int 23 8 => int 34 9 => int 2341
Résumer le principe de l'algorithme de tri à bulles : pour un ensemble de données, comparer les tailles des données adjacentes, placer les données avec de petites valeurs devant, et les données avec de grandes valeurs plus tard.
Cet article est une introduction à l'algorithme de tri à bulles PHP. Dans le prochain article "Algorithme de tri à bulles PHP (2) ", nous utiliserons XdebugDéboguer le. processus de mise en œuvre consistant à exécuter l'algorithme de tri à bulles de manière plus intuitive pour tout le monde.
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!