1. 程式人生 > >排序——插入排序

排序——插入排序

直接插入排序:將 一個記錄插入到已經排好序的有序列表中。

function    insertSort($ar){
    $length=count($ar);
    for ($i=1;$i<$length;$i++){
        if ($ar[$i]<$ar[$i-1]){
            $flag=$ar[$i];
            for ($j=$i-1;$j>=0&&$ar[$j]>$flag;$j--){
                $ar[$j+1]=$ar[$j];
            }
            $ar[$j+1]=$flag;
        }
    }
    return  $ar;
}
echo "插入排序結果;";
print_r(insertSort([1,2,3,8,4,5,6,7]));

時間複雜度:O(n2)