选择排序法的思路:就是再第一次循环中,假设第一个数是最小的;然后跟第二个数比较,一直比到最后,找出最小值,然后把最小值跟第一个数的位置互换;再进行下一次循环,找出最小值跟第二个位置的数互换;一直循环数组的个数减去1次;数组就成了有序的了
<?php
$arr=[52,16,80,91,20];
$count =count($arr);
//定义一个中间变量
$temp = 0;
//升序排序
for($i=0;$i<count($arr)-1;$i++)
{
//假设$i就是最小的数
$minVal=$arr[$i];
//记录我认为最小数的下标
$minIndex=$i;
for($j=$i+1;$j<count($arr);$j++)
{ //如果我认为的最小值不是最小
if($minVal>$arr[$j])
{
$minVal = $arr[$j];
$minIndex = $j;
}
}
//最后交换
$temp = $arr[$i];
$arr[$i] = $arr[$minIndex];
$arr[$minIndex] = $temp;
// var_dump($arr[$minIndex]);
//var_dump($arr[$i]);
var_dump($arr);
echo '<hr />';
}
//输出排序后数组 升序显示
foreach($arr as $key=>$value)
{
echo '$arr['.$key."]=".$value."<br>";
}
var_dump($arr);