php四大排序之插入排序
插入排序法 插入排序法思路:將要排序的元素插入到已經 假定排序號的陣列的指定位置。
程式碼:
function insert_sort($arr) { //區分 哪部分是已經排序好的 //哪部分是沒有排序的 //找到其中一個需要排序的元素 //這個元素 就是從第二個元素開始,到最後一個元素都是這個需要排序的元素 //利用迴圈就可以標誌出來 //i迴圈控制 每次需要插入的元素,一旦需要插入的元素控制好了, //間接已經將陣列分成了2部分,下標小於當前的(左邊的),是排序好的序列 for($i=1, $len=count($arr); $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; }