1. 程式人生 > >PHP排序算法:選擇排序

PHP排序算法:選擇排序

找到 例如 ray ++ 內置 位數 RR str int

在PHP中實現數字排序很簡單,我們可以將字符串轉成數組,例如:

$string = ‘94132768‘;

通過

$arr = str_split(($string);

轉成數組:
$arr = array(9,4,1,3,2,7,6,8);

排序算法

第一種我們可以通過使用Php的內置函數進行排序

sort($arr);升序,rsort($arr)降序

第二種是使用 選擇排序法 進行排序,大概思路就是,從數組中找到最小數,然後與第1位數字進行對調,然後以此類推:

9,4,1,3,2,7,6,8

9和1對調

1,4,9,3,2,7,6,8

然後4到8中最小數為2,2和4對調

1,4,9,3,4,7,6,8

以此類推

$n = count($arr);

for($i=0;$i<$n;$i++){

    $min = $arr[$i];

    //比較[i,n)中的最小數,然後進行位置兌換
    for($j=$i+1;$j<$n;$j++){

        if($arr[$j] < $min)
                {
            $temp = $arr[$j];
            $arr[$i] = $temp;
            $arr[$j] = $arr[$i];
            $min = $arr[$j];
        }

    }

}
print_r($arr);

大家可以沒事試試。很簡單的算法。

PHP排序算法:選擇排序