<?php
$x = array(10, 2, 5, 1, 30, 1, 7);
// First sort
sort($x);
// Then pick highest and lowest from the back and front of the array
// until it is empty.
$z = array();
while (count($x) > 0){
$z[] = array_pop($x);
if (count($x) > 0) // <- For arrays with an odd number of elements.
$z[] = array_shift($x);
}
var_dump($z);
5条答案
按热度按时间bvuwiixz1#
对数组排序,然后交替地从数组的开头和结尾推送元素:
返回:
ugmeyewa2#
yws3nbqq3#
我不能告诉你确切的语法,我的php很生疏,但你可以做的是:
$A[i], $B[count($B)-1-i]
相加这应该能给予你的需要
3z6pesqy4#
没有预定义的方法来做到这一点。但是,php允许用户排序函数
usort
,您可以自定义以您需要的方式对数组进行排序。42fyovps5#
$arr = [2,10,11,12,4,18];