原理
将需要排序的元素,和前面已经排序好的元素从后往前比较,如果前面元素大于当前插入元素,则将元素往前移动一个位置,直到前面元素小于当前元素(第一个元素默认已经被排序)
时间复杂度
O(n^2)
function insertSort($arr)
{
$len = count($arr);
if ($len == 1) return $arr;
for ($i = 1; $i < $len - 1; $i++) {
$tem = $arr[$i];
for ($j = $i - 1; $j >= 0; $j--) {
if($tem<$arr[$j]){
$arr[$j+1]=$arr[$j];
$arr[$j]=$tem;
}else{
break;
}
}
}
return $arr;
}