<?php function insert_sort($arr) { //插入排序法 $len=count($arr); for($i=1; $i<$len; $i++) { //得到當前須要比較的元素值。 $tmp = $arr[$i]; //內層循環控制 比較 並 插入 for($j=$i-1; $j>=0; $j--) { //$arr[$i];//須要插入的元素; $arr[$j];//須要比較的元素 if($tmp < $arr[$j]) { //發現插入的元素要小,交換位置 //將後邊的元素與前面的元素互換 $arr[$j+1] = $arr[$j]; //將前面的數設置爲 當前須要交換的數 $arr[$j] = $tmp; } else { //若是碰到不須要移動的元素 //因爲是已經排序好是數組,則前面的就不須要再次比較了。 break; } } } //將這個元素 插入到已經排序好的序列內。 //返回 return $arr; } $arr=array(54,1,43,62,21,66,32,78,36,76,0,17,39,-1); echo '<pre>'; print_r(insert_sort($arr)); ?>