题意:2个包含二进制数的字符串,将二进制相加,返回这个二进制的字符串。
class Solution {
public:
string addBinary(string a, string b) {
int i=a.size(),j=b.size();
int carry=0,sum=0;
if(j>i) return addBinary(b,a);
for(i=a.size()-1;i>=0;i--)
{
int x=a[i]-'0';
int m=j+i-a.size();
int y=m>=0?(b[m]-'0'):0;
a[i]=(x+y+carry)%2+'0';
carry=(x+y+carry)>=2?1:0;
}
if(carry) a='1'+a;
return a;
}
};
本文介绍了一种方法,用于处理两个表示二进制数的字符串,并通过算法将这两个二进制数相加,最终返回一个新的表示相加结果的二进制字符串。
585

被折叠的 条评论
为什么被折叠?



