53、PHP 实现归并排序
创始人
2024-11-14 17:34:15
0

题目: PHP 实现归并排序

描述:

  • 将指定的两个有序数组(arr1,arr2)合并并且排序
  • 我们可以找到第三个数组,然后依次从两个数组的开始取数据
  • 哪个数据小就先取哪个的,然后删除掉刚刚取过的数据
function al_merge($arrA,$arrB) {     $arrC = array();     while(count($arrA) && count($arrB)){         //这里不断的判断哪个值小,就将小的值给到arrC,但是到最后肯定要剩下几个值,         //不是剩下arrA里面的就是剩下arrB里面的而且这几个有序的值,肯定比arrC里面所有的值都大所以使用         $arrC[] = $arrA['0'] < $arrB['0'] ? array_shift($arrA) : array_shift($arrB);     }     return array_merge($arrC, $arrA, $arrB); } //归并排序主程序 function al_merge_sort($arr){     $len=count($arr);     if($len <= 1)         return $arr;//递归结束条件,到达这步的时候,数组就只剩下一个元素了,也就是分离了数组     $mid = intval($len/2);//取数组中间     $left_arr = array_slice($arr, 0, $mid);//拆分数组0-mid这部分给左边left_arr     $right_arr = array_slice($arr, $mid);//拆分数组mid-末尾这部分给右边right_arr     $left_arr = al_merge_sort($left_arr);//左边拆分完后开始递归合并往上走     $right_arr = al_merge_sort($right_arr);//右边拆分完毕开始递归往上走     $arr=al_merge($left_arr, $right_arr);//合并两个数组,继续递归     return $arr; } 

相关内容

热门资讯

透视辅助(wepoker)we... 透视辅助(wepoker)wepoker究竟有没有透视(透视)一贯真的有挂(AA德州教程)1、wep...
透视好牌"hhpko... 透视好牌"hhpkoer辅助挂是真的吗"其实真的有挂(透视)科技教程(有挂详情)1)hhpkoer辅...
透视脚本!hhpoker有透视... 透视脚本!hhpoker有透视功能吗,本来是有挂(透视)分享教程(有挂介绍)该软件可以轻松地帮助玩家...
透视了解!aapoker ai... 透视了解!aapoker ai插件(透视)透视软件(总是有挂)1、首先打开aapoker ai插件最...
透视美元局(WEPOKER)w... 透视美元局(WEPOKER)wepoker辅助工具(透视)真是真的是有挂(切实教程);1、让任何用户...
透视数据"德扑圈透视... 透视数据"德扑圈透视挂"果然真的有挂(透视)爆料教程(有挂揭秘)1)德扑圈透视挂辅助挂:进一步探索德...
透视了解!wejoker辅助器... 透视了解!wejoker辅助器要钱玩吗,起初是真的有挂(透视)AA德州教程(有挂教程);1、这是跨平...
透视代打!aa poker透视... 透视代打!aa poker透视软件(透视)透视脚本入口(都是是真的有挂)1、许多玩家不知道aa po...
透视辅助(WePoKer)we... 透视辅助(WePoKer)wepoker辅助器安装包(透视)真是真的是有挂(我来教教你);wepok...
透视实锤"wepok... 透视实锤"wepoker免费脚本咨询"一贯存在有挂(透视)可靠教程(有挂技巧)1、打开软件启动之后找...