php实现插入排序
<?php /** *插入排序 *@paramArray$a无序集合 *@returnArray有序集合 */ functioninsertSort($a){ $temp; $i; $j; $size_a=count($a); #从第二个元素开始 for($i=1;$i<$size_a;$i++){ if($a[$i]<$a[$i-1]){ $j=$i;#保存当前元素的位置 $temp=$a[$i];#当前元素的值 #比较左边的元素,如果找到比自己更小的,向右移动元素,否则插入元素到当前位置 while($j>0&&$temp<$a[$j-1]){ $a[$j]=$a[$j-1]; $j--; } #插入元素 $a[$j]=$temp; } } return$a; } /** *获取随机数 *@paramInteger$size数量 *@returnInteger */ functionrandomNumber($size=10){ $rand=array(); srand(time(NULL)); for($i=0;$i<$size;$i++){ array_push($rand,mt_rand(0,1000)); } return$rand; } $a=randomNumber(); echosprintf("Unsortedlist%s\n",implode("",$a)); echosprintf("Sortedlist%s\n",implode("",insertSort($a)));
以上就是本文所述的全部内容了,希望大家能够喜欢。