JavaScript 中的交替洗牌
交替洗牌
JavaScript 中的交替洗牌数组是一个数字数组,其中的数字编索引时,最大的数字后面紧跟着最小的元素,第二大的元素后面紧跟着第二小的元素,依此类推。
例如:如果输入数组为 -
const arr = [11, 7, 9, 3, 5, 1, 13];
则输出应为 &minus
const output = [13, 1, 11, 3, 9, 5, 7];
示例
代码如下 −
const arr = [11, 7, 9, 3, 5, 1, 13]; const sorter = (a, b) => a - b; const alternateShuffle = (arr) => { const array = arr .slice() .sort(sorter); 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(alternateShuffle(arr));
输出
这将在控制台中产生以下输出 −
[ 13, 1, 11, 3, 9, 5, 7 ]
广告