|
1,定義:選擇排序(Selection sort)是一種簡(jiǎn)單直觀(guān)的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再?gòu)氖S辔磁判蛟刂欣^續(xù)尋找最小(大)元素,然后放到已排序序列的末尾。以此類(lèi)推,直到所有元素均排序完畢。
參考代碼:
復(fù)制代碼 代碼如下:
<?php
//選擇排序(Selection sort)是一種簡(jiǎn)單直觀(guān)的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再?gòu)氖S辔磁判蛟刂欣^續(xù)尋找最小(大)元素,然后放到已排序序列的末尾。以此類(lèi)推,直到所有元素均排序完畢。
function selectSort(&$arr){
//定義進(jìn)行交換的變量
$temp=0;
for($i=0;$i<count($arr)-1;$i++){
//假設(shè)$i就是最小值
$valmin=$arr[$i];
//記錄最小值的下標(biāo)
$minkey=$i;
for($j=$i+1;$j<count($arr);$j++){
//最小值大于后面的數(shù)就進(jìn)行交換
if($valmin>$arr[$j]){
$valmin=$arr[$j];
$minkey=$j;
}
}
//進(jìn)行交換
$temp=$arr[$i];
$arr[$i]=$arr[$minkey];
$arr[$minkey]=$temp;
}
}
$arr=array(7,5,0,4,-1);
selectSort($arr);
print_r($arr);
?>
php技術(shù):用php實(shí)現(xiàn)選擇排序的解決方法,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。