插入排序总结php
<?php /* * 插入排序算法, * * 实际上3,4,5,2 其实是把3,4,5日后移,而后腾出2的位置,把2放进去 */ $s_time = microtime(true); //插入排序 按从小到大排序 $insert=array(); for($i=0;$i<100;$i++) { $insert[$i]=rand(0,30000); } //print_r($insert); function insertsort(&$arr) { //插入排序把第一个当作是有序的 因此 i从1开始 for($i=1;$i<count($arr);$i++) { $insertval=$arr[$i]; $insertindex=$i-1; //寻找插入点 while($insertindex>=0&&$insertval<$arr[$insertindex]) { //日后移数字 $arr[$insertindex+1]=$arr[$insertindex]; $insertindex--; } //插入值 $arr[$insertindex+1]=$insertval; } } insertsort($insert); $e_time = microtime(true); echo ($e_time-$s_time)*1000; print_r($insert); ?>