排序-选择排序

/**
 * @desc: 选择排序-PHP(升序)
 * 思路分析:选择排序,在要排序的一组数中,选出最小的一个数与第一个位置的数交换。
 * 然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第
 * 二个数和最后一个数比较为止。
 *  时间复杂度O(n²)
 * @param $arr
 * @return mixed
 */
function selectSort($arr)
{
    $count = count($arr);
    for ($i = 0; $i < $count; $i++) {
        $k = $i;
        for ($j = $i + 1; $j < $count; $j++) {
            if ($arr[$j] < $arr[$k]) {
                $k = $j;
            }
        }
        if ($k != $i) {
            $temp = $arr[$i];
            $arr[$i] = $arr[$k];
            $arr[$k] = $temp;
        }
    }
    return $arr;
}


文章已完
作者心情:昨夜西风凋碧树,独上高楼,望尽天涯路。
如无特殊说明,文章均为本站原创,转载请注明出处
  • 转载请注明来源:排序-选择排序
  • 本文永久链接地址:http://icehill.cn/post/single/info/214.html