php實(shí)現(xiàn)選擇排序的思路和代碼
來源:轉(zhuǎn)載
發(fā)布時(shí)間:2018-11-21 11:46:21
閱讀量:738
本篇文章給大家?guī)淼膬?nèi)容是關(guān)于php實(shí)現(xiàn)選擇排序的代碼,有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對你有所幫助。
選擇排序:
1.數(shù)組分成前后兩個(gè)部分,前部分是排序的,后部分是無序的
2.兩層循環(huán),先假定當(dāng)前循環(huán)的第一個(gè)索引為最小值,內(nèi)部循環(huán)找比該索引還小的值,找到交換
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[i]
arr[i]=arr[minIndex]
arr[minIndex]=arr[i]
|
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 ;
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 );
|