在JavaScript中添加二进制数组的算法
二进制加法的基础-
二进制加法的四个规则是-
0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10
请牢记这些要点,二进制加法与十进制加法非常相似(遵循进位原理)。
我们需要编写一个JavaScript函数,该函数接受两个仅包含二进制字符串的数组。(“0”或“1”)。
该函数应从数组中添加相应的二进制位,并返回一个包含这些数组的其他结果的新数组。
例如-如果输入数组是-
const arr1 = ['1', '0', '1']; const arr2 = ['1', '0', '1'];
那么输出应该是-
const output = ['1', '0', '1', '0'];
示例
为此的代码将是-
const arr1 = ['1', '0', '1'];
const arr2 = ['1', '0', '1'];
const addBinary = (arr1 = [], arr2 = []) => {
const str1 = arr1.join('');
const str2 = arr2.join('');
let carry = 0, temp = 0, res = '';
for(let i = Math.max(str1.length, str2.length) − 1; i >= 0; i−−){
const el1 = +str1[i] || 0;
const el2 = +str2[i] || 0;
if(el1 + el2 + carry > 1){
temp = 0;
carry = 1;
}else{
temp = el1 + el2 + carry;
carry = 0;
};
res = temp + res;
};
if(carry){
res = carry + res;
};
return res.split('');
};
console.log(addBinary(arr1, arr2));输出结果
控制台中的输出将是-
[ '1', '0', '1', '0' ]
热门推荐
5 送心的祝福语简短
10 送教授贺卡祝福语简短
11 妈妈的中考祝福语简短
12 婚礼祝福语男士简短的
13 生日贺卡祝福语英文简短
14 升职加薪的祝福语简短
15 发文章祝福语简短英语
16 访贫问苦祝福语简短句子
17 市场经理生日祝福语简短
18 接亲祝福语简短10字