php实现选择排序的思路和代码

143 阅读1分钟
本篇文章给大家带来的内容是关于php实现选择排序的代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。



选择排序:
1.数组分成前后两个部分,前部分是排序的,后部分是无序的
2.两层循环,先假定当前循环的第一个索引为最小值,内部循环找比该索引还小的值,找到交换
1
2
3
4
5
6
7
8
for i;i<len;i++
minIndex=i
for j=i+1;j<len;j++
if arr[j]<arr[minIndex]
minIndex=j
t=arr
arr=arr[minIndex]
arr[minIndex]=arr



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
function selectSort(&$arr){
$len=count($arr);
for($i=0;$i<$len;$i++){
$minIndex=$i;//假定当前i是最小值
for($j=$i+1;$j<$len;$j++){
if($arr[$j]<$arr[$minIndex]){
$minIndex=$j;
break;
}
}
$t=$arr[$i];
$arr[$i]=$arr[$minIndex];
$arr[$minIndex]=$t;
}
return $arr;
}

$arr=array(2,3,1,4,9,5);
selectSort($arr);
var_dump($arr);

以上就是php实现选择排序的思路和代码的详细内容