<?php function quiryArr(&$arr,$s,$e){ $low=$s; $high=$e; $mid=($low+$high)/2; $key=0; while ($low<$high){ $key=$arr[$mid]; $low=$s; $high=$e; while($high>$mid){ if($arr[$high]<$key){ $arr[$mid]=$arr[$high]; $arr[$high]=$key; break; } $high--; } $key=$arr[$mid]; while($low<$mid){ if($arr[$low]>$key){ $arr[$mid]=$arr[$low]; $arr[$low]=$key; break; } $low++; } } $low=$s; $high=$e; if($low<$mid-1){ quiryArr(&$arr,$low,$mid-1); } if($high>$mid+1){ quiryArr(&$arr,$mid+1,$high); } } $arr=array(23,15,16,12,14,19,9,8,2,4,5); foreach ($arr as $value){ echo $value.' '; } echo '<br>'; quiryArr(&$arr,0,count($arr)); foreach ($arr as $value){ echo $value.' '; } ?>