首页 > 代码库 > 插入排序

插入排序

结果图:



维基百科演示图:


维基百科方法:

<?php

$arr=array(5,4,3,2,1);
foreach ($arr as $k => $v) {
	$i=$k-1;
	while ($i>-1&&$v<$arr[$i]) {
		$temp = $arr[$i];
		$arr[$i]=$arr[$i+1];
		$arr[$i+1]=$temp;
		$i--;
		var_dump(json_encode($arr));
	}
}

?>




麻省理工演示图:


麻省理工方法:

<?php

$arr=array(5,4,3,2,1);

$n = count($arr);
for ($i=1; $i < $n ; $i++) {
	$temp=$arr[$i];
	while ($i>0 && $arr[$i]<$arr[$i-1]) {
		$arr[$i]=$arr[$i-1];
		$arr[$i-1]=$temp;
		$i--;
		var_dump(json_encode());
	}
}

?>





易理解实现方法:

<?php

$arr=array(5,4,3,2,1);

foreach ($arr as $key => $value) {
	while ($key>0 && $arr[$key]<$arr[$key-1]) {
		$arr[$key]=$arr[$key-1];
		$arr[$key-1]=$value;
		$key--;
		var_dump(json_encode($arr));
	}
}

?>