PHP实现用迭代实现数组的快速排序
下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
function quicksortX(&$seq)
{
$stack = array($seq);
$sort = array();
while ($stack) {
$arr = array_pop($stack);
if(count($arr) <= 1){
if (count($arr) == 1) {
$sort[] = &$arr[0];
}
continue;
}
$k = $arr[0];
$x = array();
$y = array();
$_size = count($arr);
for ($i = 1; $i < $_size; $i++) {
if ($arr[$i] <= $k) {
$x[] = &$arr[$i];
} else {
$y[] = &$arr[$i];
}
}
!empty($y) && array_push($stack,$y);
array_push($stack,array($arr[0]));
!empty($x) && array_push($stack,$x);
}
return $sort;
}
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。