对二进制值数组进行排序 - 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 ]
广告