1 <?php 2 /** 3 * 插入排序 4 */ 5 class insterSort 6 { 7 public function sort_out($sortNum){ 8 $length=count($sortNum);//計算數組長度 9 for ($i=0; $i <$length ; $i++) { 10 $temp=$sortNum[$i];//取出插入值 11 for ($j=$i-1; $j>=0; $j--) { //要注意這裏是大於等於零,這裏數組的下標是從0開始的 12 if($temp<$sortNum[$j]){//對數組中元素位置進行替換 13 $sortNum[$j+1]=$sortNum[$j]; 14 $sortNum[$j]=$temp; 15 } 16 else{ 17 break; 18 } 19 } 20 } 21 return $sortNum; 22 } 23 24 } 25 $insterSort=new insterSort();//將插入排序類實例化 26 $arr=["5","2","9","4","1"];//定義一個測試的數組 27 $res=$insterSort->sort_out($arr);//對測試數組進行排序 28 print_r($res);//輸出排序後的結果