class Solution {
public:
string addBinary(
string a,
string b) {
if (a.size() < b.size()) return addBinary(b, a);
reverse(a.
begin(), a.
end());
reverse(b.
begin(), b.
end());
int jin =
0, L = b.size(), i =
0;
for (; i < L; ++i) {
int t = jin + a[i] + b[i] -
'0' -
'0';
a[i] = t %
2 +
'0';
jin = t /
2;
}
while (i < a.size() && jin ==
1) {
int t = jin + a[i] -
'0';
a[i] = t %
2 +
'0';
jin = t /
2;
++i;
}
if (jin ==
1) a.push_back(
'1');
reverse(a.
begin(), a.
end());
return a;
}
};
转载请注明原文地址: https://www.6miu.com/read-1900308.html