php 关联数组快速排序的简单示例

前端之家收集整理的这篇文章主要介绍了php 关联数组快速排序的简单示例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
本文实例讲述了 PHP关联数组快速排序,感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。
经测试代码如下:

/**
 * 关联数组快速排序
 *
 * @param 
 * @arrange (512.笔记) jb51.cc
 **/
function qsort($a,$f) { 
   qsort_do(&$a,Count($a)-1,$f); 
}
function qsort_do($a,$l,$r,$f) { 
   if ($l < $r) { 
	   qsort_partition(&$a,&$lp,&$rp,$f); 
	   qsort_do(&$a,$lp,$rp,$f); 
   } 
}
function qsort_partition($a,$f) { 
   $i = $l+1; 
   $j = $l+1; 
	
   while ($j <= $r) { 
	   if ($f($a[$j],$a[$l])) { 
		   $tmp = $a[$j]; 
		   $a[$j] = $a[$i]; 
		   $a[$i] = $tmp; 
		   $i++; 
	   } 
	   $j++; 
   } 
	
   $x = $a[$l]; 
   $a[$l] = $a[$i-1]; 
   $a[$i-1] = $x; 
	
   $lp = $i - 2; 
   $rp = $i; 
}

/***   代码来自编程之家 jb51.cc(jb51.cc)   ***/
原文链接:https://www.f2er.com/php/528863.html

猜你在找的PHP相关文章