function func($arr, $key, $low=0, $high=0)
{
if ($low <= $high) {
if ($low == 0 && $high == 0) {
$high = count($high);
}
$mid = intval(($low + $high) / 2);
if ($arr[$mid] == $key) {
echo $arr[$mid];
} elseif ($arr[$mid] > $key) {
func($arr, $key, $low, $mid-1);
} else {
func($arr, $key, $mid+1, $high);
}
}
}
$arr = ['a', 'b', 'c'];
func($arr, 'c');
function quick_sort($arr)
{
if (!is_array($arr)) {
return false;
}
if (count($arr) <= 1) {
return $arr;
}
$left_arr = [];
$right_arr = [];
$key = $arr[0];
for ($i=0; $i<count($arr); $i++) {
if ($arr[$i] < $key) {
$left_arr[] = $arr[$i];
} else {
$right_arr[] = $arr[$i];
}
}
$left_arr = quick_sort($left_arr);
$right_arr = quick_sort($right_arr);
return array_merge($left_arr, [$key], $right_arr);
}
$arr = [2, 3, 6, 4, 1, 0];
print_r(quick_sort($arr));