首页 >后端开发 >php教程 >php实现二维数组快速排序算法的示例

php实现二维数组快速排序算法的示例

黄舟
黄舟原创
2017-10-18 09:09:561992浏览

这篇文章主要介绍了php 二维数组快速排序算法的实现代码的相关资料,希望通过本文能帮助到大家,让大家实现这样的功能,需要的朋友可以参考下

php 二维数组快速排序算法的实现代码

二维数组排序算法与一维数组排序算法基本理论都是一样,都是通过比较把小的值放在左变的数组里,大的值放在右边的数组里在分别递归。

实例代码:


<?php 
class Bubble { 
  private function __construct() { 
  } 
  private static function sortt($data) { 
    if (count ( $data ) <= 1) { 
     return $data; 
    } 
    $tem = $data [0][&#39;score&#39;]; 
    $leftarray = array (); 
    $rightarray = array (); 
    for($i = 1; $i < count ( $data ); $i ++) { 
      if ($data [$i][&#39;score&#39;] <= $tem ) { 
        $leftarray[] = $data[$i]; 
      } else { 
        $rightarray[] = $data[$i]; 
      } 
    } 
    $leftarray=self::sortt($leftarray); 
    $rightarray=self::sortt($rightarray); 
    $sortarray = array_merge ( $leftarray, array ($data[0]), $rightarray ); 
    return $sortarray; 
  } 
  public static function main($data) { 
    $ardata = self::sortt ( $data ); 
    return $ardata; 
  } 
} 
 
$arr=array( 
  array(&#39;sid&#39;=>1,&#39;score&#39;=>76), 
  array(&#39;sid&#39;=>2,&#39;score&#39;=>93), 
  array(&#39;sid&#39;=>3,&#39;score&#39;=>68.5), 
  array(&#39;sid&#39;=>4,&#39;score&#39;=>82.5), 
  array(&#39;sid&#39;=>5,&#39;score&#39;=>60.5) 
); 
print_r(Bubble::main($arr));

以上是php实现二维数组快速排序算法的示例的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn