Le tri par sélection est une amélioration du tri à bulles, avec un seul échange de passe par passage dans la liste. En termes simples, le principe du tri par sélection est de sélectionner à chaque fois l'élément le plus petit (ou le plus grand) parmi les éléments de données à trier et de le stocker au début de la séquence jusqu'à ce que tous les éléments de données à trier soient disposés. Le tri par sélection est une méthode de tri instable.
L'exemple de code du tri par sélection PHP est le suivant :
<?php function selection_sort($data) { for($i=0; $i<count($data)-1; $i++) { $min = $i; for($j=$i+1; $j<count($data); $j++) { if ($data[$j]<$data[$min]) { $min = $j; } } $data = swap_positions($data, $i, $min); } return $data; } function swap_positions($data1, $left, $right) { $backup_old_data_right_value = $data1[$right]; $data1[$right] = $data1[$left]; $data1[$left] = $backup_old_data_right_value; return $data1; } $my_array = array(3, 0, 2, 5, -1, 4, 1); echo "原始数组:\n"; echo implode(', ',$my_array ); echo "\n排序后数组:\n"; echo implode(', ',selection_sort($my_array)). PHP_EOL;
Sortie :
原始数组: 3, 0, 2, 5, -1, 4, 1 排序后数组: -1, 0, 1, 2, 3, 4, 5
Ceci L'article concerne la méthode d'implémentation du tri de sélection PHP, j'espère que cela sera utile aux amis dans le 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!