在PHP中快速排序

时间:2017-12-29 12:23:08

标签: php algorithm data-structures quicksort

我正在使用php学习DS,在这里我坚持使用QUICK排序算法。我完全理解在理论上快速排序的工作,但问题在于代码。任何人都可以帮助我理解如何排序真的适用于recurssion ..

function quickSort($array) {

//length
$length=count($array);
if($length <=1) {
  return $array;
}
else {
  //select the pivot element
  $pivot=$array[0];

  //elements smaller than the pivot will contain in the left array and-
  //greater elements in the right array
  $left=$right=array();

  for($i=1;$i<count($array);$i++) {
    if($array[$i]<$pivot) {
      $left[]=$array[$i];
    }
    else {
      $right[]=$array[$i];
    }
  }
}

 //Recursion
  return array_merge(quickSort($left),array($pivot),quickSort($right));
 }

0 个答案:

没有答案