用php实现选择排序的解决方法 |
本文标签:php,选择排序 1,定义:选择排序(Selection sort)是一种简单直观的排序算法 。它的工作原理如下 。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾 。以此类推,直到所有元素均排序完毕 。 参考代码: 复制代码 代码如下: <?php //选择排序(Selection sort)是一种简单直观的排序算法 。它的工作原理如下 。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾 。以此类推,直到所有元素均排序完毕 。 function selectSort(&$arr){ //定义进行交换的变量 $temp=0; for($i=0;$i<count($arr)-1;$i++){ //假设$i就是最小值 $valmin=$arr[$i]; //记录最小值的下标 $minkey=$i; for($j=$i+1;$j<count($arr);$j++){ //最小值大于后面的数就进行交换 if($valmin>$arr[$j]){ $valmin=$arr[$j]; $minkey=$j; } } //进行交换 $temp=$arr[$i]; $arr[$i]=$arr[$minkey]; $arr[$minkey]=$temp; } } $arr=array(7,5,0,4,-1); selectSort($arr); print_r($arr); ?> |