PHP 实现 插入排序

/**
 * 插入排序
 * 将数组看成两部分 左侧为已排好序的 右侧为待排序的.
 * 当前元素后的每个元素分别与当前元素比较
 */

function insertSort($arr){
    $len = count($arr);
    if($len < 2){
        return $arr;
    }
    # 控制循环次数
    for($i=1;$i<$len;$i++){
        # 已经排好序的
        $m = $arr[$i];
        for($j=$i-1;$j>=0;$j--){
            if($m > $arr[$j]){
                $arr[$j+1] = $arr[$j];
                $arr[$j] = $m;
            }
        }
    }
    return $arr;
}

echo '
';
print_r(insertSort($arr));
exit;

你可能感兴趣的:(php)