首页 > 编程知识 正文

定义一个n×n的二维数组,冒泡排序python

时间:2023-05-06 16:24:22 阅读:34754 作者:3764

一维数组的排序非常简单。 二维数组的排序怎么样? 二维数组的排序也非常有用,基于两个函数asort和arsort。 为什么这两个函数在排列一维数组时经常保留索引? 二维数组的排序也基于一维数组的排序,借由索引生成新的二维数组。 代码如下所示。 (第一种可以对任何类型进行排序)

第一个:

classarraysort { private function _ construct (}/* * * * @ param array $ arr *数组* @param String $keys *数组所在的列* @ param SSS 数组@ returnbooleanmultitype : unknown */privatestaticfunctionarray _ sort ($ arr、$keys、$order ) if (! is_array($arr ) ) { echo '$arr不是数组); 返回假; } $kearray=array (); $keyarray=array (; $newarray=array (; foreach($arras$val ) ) $keyarray )=$val ) $keys ); }if($order==0) ) asort ) $keyarray ); (else ) arsort ) $keyarray; }foreach($keyarrayas$key=$val ) { $kearray []=$key; }Foreach($kearrayas$value ) ) $newarray )=$arr ) $value ); }返回$ new array; }publicstaticfunctionmain($ARR、$keys、$order=0) $ new array=self :3360 array _ sort ) $ARR、$keys、$ orr eys }$person=Array(Array ) (id )=2,name ) Zhangsan ),age )=23 ),Array ) id (=5,name ) ) Lisi $ a=array print_r($a;

关于二维数组排序,如果时间是时间戳这样的数字型的话,就有更简单的方法。 主要是usort关于该方法的使用根据官方网站。

第二个:

classarraysort { private function _ construct ({ } privatestaticfunctionarr _ sort ) $a,$b ) return $ b [ ' id ' ] } pubbbb 返回$ ar; }$person=Array(Array ) (id )=2,name ) Zhangsan ),age )=23 ),Array ) id )=5,name ) ) Lisi print _ le

第三,系统函数array_multisort (; 函数的具体使用方法如下:官网(http://www.PHP.net/manual/zh/function.array-multisort.PHP )的具体方法。

$data[]=array('volume'=67,' edition'=2); $data[]=array('volume'=86,' edition'=1); $data[]=array('volume'=85,' edition'=6); $data[]=array('volume'=98,' edition'=2); $data[]=array('volume'=86,' edition'=6); $data[]=array('volume'=67,' edition'=7); foreach($dataas$key=$row ) $ volume ($ key ) $row ) ' volume ); $edition[$key]=$row['edition']; //数据按volume降序排列,Array_multisort($volume,SORT_DESC,$edition,sort _ sort ),按edition升序排列

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。