<?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.' ';
}
?>
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.' ';
}
?>