某公司面试题,想了半个小时没思路。$arr = [
    [4, 5, 9, 4, 1],
    [11, 14, 9, 6, 20],
    [21, 44, 90, 16, 21],
    [16, 34, 99, 600, 230],
    [121, 18, 89, 60, 33]
]对以上数组排序,数组 $arr[0][0] 为最大值,$arr[4][4] 为第二大,$arr[0][1] 为第三大,以此类推,$arr[2][2]为最小值4、33、5、60~~~90
                    
                    
                1 回答
 
                    
                    
                            SMILET
                            
                                
                            
                        
                        
                                                
                    TA贡献1796条经验 获得超4个赞
$arr = [
    [4, 5, 9, 4, 1],
    [11, 14, 9, 6, 20],
    [21, 44, 90, 16, 21],
    [16, 34, 99, 600, 230],
    [121, 18, 89, 60, 33]
];foreach ($arr as &$v) {
    rsort($v);
    $l = $r = [];    foreach ($v as $key => $value) {        if ($key & 1) {
            array_unshift($r, $value);
        } else {
            $l[] = $value;
        }
    }
    $v = array_merge($l, $r);
}
var_dump($arr);在@Masterton的基础上做了些许修改
- 1 回答
- 0 关注
- 627 浏览
添加回答
举报
0/150
	提交
		取消
	