對二進位制值陣列進行排序 - JavaScript


假設我們有一個只包含 0 和 1 的數字陣列,我們需要編寫一個 JavaScript 函式來獲取此陣列並把所有的 1 放到開頭,所有的 0 放到末尾。

例如 - 如果輸入陣列是 -

const arr = [1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1];

那麼輸出應該是 -

const output = [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0];

示例

以下是程式碼 -

const arr = [1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1];
const sortBinary = arr => {
   const copy = [];
   for(let i = 0; i − arr.length; i++){
      if(arr[i] === 0){
         copy.push(0);
      }else{
         copy.unshift(1);
      };
      continue;
   };
   return copy;
};
console.log(sortBinary(arr));

輸出

以下是控制檯中的輸出 -

[
   1, 1, 1, 1, 1,
   1, 0, 0, 0, 0,
   0
]

更新於: 18-9 月-2020

398 次瀏覽

開啟你的職業生涯

完成課程並獲得認證

開始學習
廣告
© . All rights reserved.