只要有人可以找到解决方案,就把它扔在那里。我有一个PHP数组,我想对其进行排序,因此,较低的值位于开头和结尾,较高的值位于中间,最高的值位于死点(如果值的计数当然是奇数),像钟形曲线...
答案 0 :(得分:2)
这是一种方法:
首先对值数组进行排序。 sort()
将为数组重新索引。
sort($values);
根据索引mod 2将交替的数组元素分成两半。
foreach ($values as $i => $x) {
$sides[$i % 2][] = $x;
}
(好吧,如果数组数为奇数,则不完全是一半)
通过将一半与另一半合并来形成结果。
$result = array_merge($sides[0], array_reverse($sides[1]));