使用 JavaScript 重新排列数组以达到最大最小形式


我们要求编写一个函数,例如 minMax(),它接收一个数字数组,并重新排列元素,使最大的元素排在后面,其次是第二大的元素,其次是第二小的元素,依此类推。

例如 −

// if the input array is:
const input = [1, 2, 3, 4, 5, 6, 7]
// then the output should be:
const output = [7, 1, 6, 2, 5, 3, 4]

因此,让我们为此函数编写完整代码 −

示例

const input = [1, 2, 3, 4, 5, 6, 7];
const minMax = arr => {
   const array = arr.slice();
   array.sort((a, b) => a-b);
   for(let start = 0; start < array.length; start += 2){
      array.splice(start, 0, array.pop());
   }
   return array;
};
console.log(minMax(input));

输出

控制台中的输出为 −

[
   7, 1, 6, 2,
   5, 3, 4
]

更新于: 26-8 月-2020

222 次浏览

启动您的职业生涯

完成该课程并获得认证

开始
广告