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
]

更新於:18-Sep-2020

248 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.