当前位置:首页 > PHP教程 > php数组 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-08-12 10:59:39 浏览: 评论:0 

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

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

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

实例代码:

  1. <?php  
  2. class Bubble {  
  3.   private function __construct() {  
  4.   }  
  5.   private static function sortt($data) {  
  6.     if (count ( $data ) <= 1) {  
  7.      return $data;  
  8.     }  
  9.     $tem = $data [0]['score'];  
  10.     $leftarray = array ();  
  11.     $rightarray = array ();  
  12.     for($i = 1; $i < count ( $data ); $i ++) {  
  13.       if ($data [$i]['score'] <= $tem ) {  
  14.         $leftarray[] = $data[$i];  
  15.       } else {  
  16.         $rightarray[] = $data[$i];  
  17.       }  
  18.     }  
  19.     $leftarray=self::sortt($leftarray);  
  20.     $rightarray=self::sortt($rightarray);  
  21.     $sortarray = array_merge ( $leftarrayarray ($data[0]), $rightarray );  
  22.     return $sortarray;  
  23.   }  
  24.   public static function main($data) {  
  25.     $ardata = self::sortt ( $data );  
  26.     return $ardata;  
  27.   }  
  28. }  
  29.    
  30. $arr=array(  
  31.   array('sid'=>1,'score'=>76),  
  32.   array('sid'=>2,'score'=>93),  
  33.   array('sid'=>3,'score'=>68.5),  
  34.   array('sid'=>4,'score'=>82.5),  
  35.   array('sid'=>5,'score'=>60.5)  
  36. );  
  37. print_r(Bubble::main($arr));

Tags: php二维数组 php排序算法

分享到: