選擇排序 Selection sort它的工作原理是每一次從待排序的資料元素中選出最小(或最大)的一個元素,存放在序列的起始位置,直到全部待排序的資料元素排完。 選擇排序是不穩定的排序方法(例如序列[5, 5, 3]第一次就將第一個[5]與[3]交換,導致第一個5挪動到第二個5後面)。
<?php function SelectSort($arr) { $count=count($arr); for ($i=0; $i <$count ; $i++) { //默认$i是最小的 $min=$i; for ($j=$i; $j <$count; $j++) { if ($arr[$min] > $arr[$j]) { //如果最小值大于下一个数,就立刻变值 $min=$j; } } //把最小的下标换成第一个值 if ($min!=$i) { list($arr[$min],$arr[$i])=[$arr[$i],$arr[$min]]; } } return $arr; } //假设需要排序的数组 $arr=array(5,9,8,2,4,6,7,1,25,13,18,22); $new_arr=SelectSort($arr); print_r($new_arr); ?>
相關推薦:
以上是php實作快速排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!