JavaScript中数组的替代排序
我们需要编写一个JavaScript函数,该函数将Numbers数组作为第一个也是唯一的参数。
我们函数的工作是以另一种方式对数组中存在的元素进行排序。
交替地,我们的意思是-
假设我们有一个数组arr,目前仅包含四个元素。然后我们的函数应该将数组的元素改组为-
arr[0] < arr[1] > arr[2] < arr[3]
请注意,给定数组可能有多个解决方案,只需要返回任何可能的解决方案即可。
例如-
如果输入数组是-
const arr = [1, 2, 3, 4, 5, 6];
那么一个可能的输出可能是-
const output = [ 3, 6, 2, 5, 1, 4 ];
示例
以下是代码-
const arr = [1, 2, 3, 4, 5, 6];
const alternateSort = (arr = []) => {
arr.sort((a, b) => a - b);
const N = arr.length;
let mid = Math.floor(N/2);
if(N % 2 !== 0){
mid++;
};
const small = arr.splice(0, mid);
const big = arr.splice(0,arr.length);
for(let i = 0; i < N; i++){
if(i % 2 === 0){
arr[i] = small.pop()
}else{
arr[i] = big.pop()
};
};
};
alternateSort(arr);
console.log(arr);输出结果
以下是控制台输出-
[ 3, 6, 2, 5, 1, 4 ]
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短