gpt4 book ai didi

javascript - 将数组排序为第 1 分钟、第 1 大、第 2 小、第 2 大等

转载 作者:行者123 更新时间:2023-11-30 19:29:05 24 4
gpt4 key购买 nike

写一个JS程序,返回一个数组,第一个元素是第一个最小值,第二个元素是第一个最大值,以此类推。

这个程序包含一个接受一个参数的函数:一个数组。该函数根据要求返回数组。

示例输入:array=[2,4,7,1,3,8,9]。预期输出:[1,9,2,8,3,7,4]

const arrsort=(arr)=>{
return arr.sort(function(a, b){return a - b});
}
const test=(arr)=>{
arr=arrsort(arr);
var arr2=[];
var j=0;
var k=arr.length-1;
for (var i=0;i<arr.length-1;i++){
if(i%2===0){
arr2.push(arr[j]);
j++;
}
else{
arr2.push(arr[k]);
k--;
}
}
return arr2;
}

最佳答案

您可以移动并弹出已排序数组副本的值,而不是使用两个索引。

var array = [2, 4, 7, 1, 3, 8, 9]

const arrsort = arr => arr.sort((a, b) => a - b);

const test = (arr) => {
var copy = arrsort(arr.slice()),
result = [],
fn = 'pop';
while (copy.length) {
fn = { pop: 'shift', shift: 'pop' }[fn];
result.push(copy[fn]());
}
return result;
}

console.log(test(array));

关于javascript - 将数组排序为第 1 分钟、第 1 大、第 2 小、第 2 大等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56619584/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com