Tri par sélection
Le tri par sélection est l'un des algorithmes de tri les plus stables. Lors de son utilisation, plus la taille des données est petite, mieux c'est. Théoriquement parlant, le tri par sélection peut également être la méthode la plus courante à laquelle la plupart des gens pensent lors du tri.
Le tri par sélection est un algorithme de tri simple et intuitif. Comment ça marche :
Parcourez un tableau et, ce faisant, trouvez la valeur maximale et sa position dans le tableau. Ensuite, "échangez la position" de l'unité avec la valeur maximale avec la dernière unité du tableau. Après cela, la valeur maximale du tableau doit être placée à la dernière position.
Continuez à parcourir les données restantes dans le processus ci-dessus et faites la même chose. Ensuite, la valeur maximale de la partie restante peut également être placée à la dernière position de la partie restante - c'est l'avant-dernière position en tant que valeur. emplacement entier.
Et ainsi de suite. . . . . .
Image :
Tableau original
|
18 | 22 | 12 | 15 | 23 | 9 | ||||||||||||||||||||||||||||||||||||||||||
Premier voyage | 18 | 22 | 12 | 15 | 9 | 23 | ||||||||||||||||||||||||||||||||||||||||||
Deuxième voyage | 18 td>9 | 12 | 15 | 22 | 23 td> | |||||||||||||||||||||||||||||||||||||||||||
Le troisième voyage | 15 | 9 | 12 | 18 | 22 | 23 | ||||||||||||||||||||||||||||||||||||||||||
Le quatrième voyage | 12 | 9 | 15 | 18 | 22 | 23 | ||||||||||||||||||||||||||||||||||||||||||
Le cinquième voyage | 9 | 12 | 15 | 18 | 22 | 23 |
<?php
$arr1 = array(18,22,12,15,23,9);
$n = count($arr1);
for ($i=0; $i < $n-1; $i++) {
//找最大值
$max = $arr1[0];
$max_key = 0;
for ($k=0; $k < $n - $i; $k++) {
if ($arr1[$k] > $max) {
$max = $arr1[$k];
$max_key = $k;
}
}
//交换
$temp = $arr1[$max_key];
$arr1[$max_key] = $arr1[$n-1-$i];
$arr1[$n-1-$i] = $temp;
}
; 3. Le nombre de données pour trouver la valeur maximale dans chaque passe est inférieur de 1 à celui de la passe précédente, dont il y a $n dans la première passe.
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!