算法原理
把待排序的記錄按其鍵值的大小逐個插入到一個已經排好序的有序序列中,直到所有的記錄插入完爲止,得到一個新的有序序列。
PHP實現插入排序
<?php
function insertion_sort ($arr) {
for($i=1; $i<count($arr); $i++){
$tmp=$arr[$i];
$key=$i-1;
while($key >= 0 && $tmp < $arr[$key]){
$arr[$key+1] = $arr[$key];
$key--;
}
if(($key+1)!=$i) {
$arr[$key+1]=$tmp;
}
}
return $arr;
}
$arr = [15, 3, 6, 43, 666, 4, 28, 39, 99, 2];
$res = insertion_sort($arr);
print_r($res);