1. 程式人生 > >插入排序的原理及php實現

插入排序的原理及php實現

核心思想:插入排序就是把一組數字分成兩部分,一部分是排好順序的,另一部分是沒有排好順序的,然後,就是從沒有排好順序的那組數字中獲取數字,把它插入到已經排好的順序的那部分數字中,當然,在插入到已經排好順序的那部分數字時,你還必須讓這個插入進來的數字與已經排好順序的數字進行比較,為的是保證已經排好的順序的那部分數字不被打亂。

<?php
function charu_sort($arr){
    $length = count($arr); //計算序列長度
    for ($i=1; $i < $length; $i++) { 
        for ($j=$i; $j > 0; $j--) { 
            if($arr[$j] < $arr[$j-1]){
                $tmp = $arr[$j];
                $arr[$j] = $arr[$j-1];
                $arr[$j-1] = $tmp;
            }else{
                break;
            }
        }
    }

    var_dump($arr);exit;
}

$data = array(8,4,3,6,5,7,10,4);
charu_sort($data);
?>