php排序算法之选择排序
生活随笔
收集整理的這篇文章主要介紹了
php排序算法之选择排序
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
/**
* 選擇排序
* 不穩(wěn)定排序
*工作原理:
首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再從剩余未排序元素中繼續(xù)尋找最小(大)元素,然后放到已排序序列的末尾。以此類推, 直到所有元素均排序完畢。
* 最差時間復雜度 o(n*n)
* 最優(yōu)時間復雜度 o(n)
* 平均時間復雜度o(n*n)
*/ function SelectSort($array) {
if (!is_array($array) || empty($array)) {
return false;
}
$len = count($array);
for($i = 0; $i < $len; $i++) {
$min = $i;
// 求最先值
for($j = $i + 1; $j < $len ; $j++) {
if ($array[$min] > $array[$j]) {
$min = $j;
}
}
if ($min != $i) {
$temp = $array[$i];
$array[$i] = $array[$min];
$array[$min] = $temp;
}
}
return $array;
}
總結(jié)
以上是生活随笔為你收集整理的php排序算法之选择排序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: loop设备及losetup命令
- 下一篇: 动态规划算法php,php算法学习之动态