本文操作系统:windows7系统、PHP5.6版本、DELL G3电脑。
1.原理。
在一组数据中,选出最小的数与第一个位置交换
然后在剩下的数据中在找出最小的数和第二个位置交换
然后在剩下的数据中在找出最小的数和第三个位置交换
依次类推直到倒数第二个数和最后一个数对比
2.使用规则
(1)数组开始索引是明确的,一般是0。
(2)数组索引的必须是连续的整型或者数字字符串或者两者混合。
3.与冒泡排序的区别
冒泡排序没发现一个异常顺序就进行一次调换,选择排序是以数组下标(每遍历一次记住最小值小标)代替中间的调换,等到最后进行一次调换即可。
4.实例
<?phpfunction selectionSort ($arr) { $count = count($arr); for ($i = 0; $i < $count - 1; $i++) { $minIndex = $i; for ($j = $i + 1; $j < $count; $j++) { if ($arr[$minIndex] > $arr[$j]) { $minIndex = $j; } } if ($minIndex != $i) { $temp = $arr[$i]; $arr[$i] = $arr[$minIndex]; $arr[$minIndex] = $temp; } } return $arr;} $arr = [15, 3, 6, 43, 132, 4, 28, 39, 99]; $res = selectionSort($arr);print_r($res);
以上就是php选择排序的基本介绍,可以说整个队列中最小的数值不一定是开头的那个,这也是选择排序产生结果的一种特色。大家对这种排序方法感兴趣的话,可以照着上面的实例代码试一试。