直接插入排序(Straight Insertion Sort)是一種最簡單的排序方法,其基本操作是將一條記錄插入到已排好的有序表中,從而得到一個新的、記錄數量增1的有序表。
邏輯比較簡單,這裏博主直接貼代碼供大家參考
php實現代碼如下:
<?php
/*直接插入排序*/
$arr = [2,4,6,3,1,5,7,9,8];
print_arr($arr);//排序前
insertsort($arr);
echo '<br/>';
print_arr($arr);//排序後
function insertsort (&$arr) {
for ($i=1;$i<count($arr);$i++) {
$tmp = $arr[$i];//將要排序的元素取出
for ($j=$i-1; $j>=0&&$arr[$j]>$tmp; $j--) {
$arr[$j+1] = $arr[$j];
}
$arr[$j+1] = $tmp;
}
}
function print_arr($arr) {
for ($i=0; $i < count($arr); $i++) {
echo $arr[$i].'--';
}
}
排序結果: