这个里面找到进位数,从后往前搜索进位即可
class Solution {
public:
string addBinary(string a, string b) {
int alen=a.size(),blen=b.size();
while(alen<blen){
a='0'+a;
alen++;
}
while(alen>blen){
b='0'+b;
blen++;
}
int carry=0;//带进位
for(int i=alen-1;i>=0;i--){
int temp=a[i]-'0'+b[i]-'0'+carry;
a[i]=temp%2+'0';
carry=temp/2;
}
if(carry!=0){//进位不是0
a='1'+a;
}
return a;
}
};