二维数组某一字段排序

#时间复杂度n,前提是两个二维数组均已排好序。(一般适合从数据库中拿出的数据)</span>
<?php
   $array1 = array( 
        array("date"=>'2016-12-12'),
		array("date"=>'2016-12-11'),
		array("date"=>'2016-12-9'),
		array("date"=>'2016-12-7'),
		array("date"=>'2016-12-5'),
		array("date"=>'2016-12-3'),
		array("date"=>'2016-12-1'),
    );
	 $array2 = array( 
        array("date"=>'2016-12-12'),
		array("date"=>'2016-12-10'),
		array("date"=>'2016-12-8'),
		array("date"=>'2016-12-6'),
		array("date"=>'2016-12-5'),
		array("date"=>'2016-12-4'),
		array("date"=>'2016-12-2'),
    );
	
	$ret = array();
	if($array1 && $array2){
		$i = 0 ;
		$j = 0 ;
		$c1 = count( $array1 );
		$c2 = count( $array2 );
		while( $i < $c1 || $j < $c2){
		   if(strtotime($array1[$i]['date']) > strtotime($array2[$j]['date']) || ($j == $c2 && $i < $c1)){
			   $base = $array1[$i];
			   $i++;
		   }else{
			   $base = $array2[$j];
			   $j++;
		   }
		   if(!$ret){
			   $ret[] = $base;
		   }else{
			   array_push( $ret , $base );
		   }   
		}
		print_r( $ret ); 
	}
?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值